Библиотека шарписта | C#, F#, .NET, ASP.NET
Все самое полезное для C#-разработчика в одном канале. Как запустить своего ии-агента: https://clc.to/tvpmDQ По рекламе: @proglib_adv Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5c81cdc130259d5b7fead
Больше📈 Аналитический обзор Telegram-канала Библиотека шарписта | C#, F#, .NET, ASP.NET
Канал Библиотека шарписта | C#, F#, .NET, ASP.NET (@csharpproglib) языкового сегмента Русский является активным участником. Сейчас сообщество объединяет 21 861 подписчиков, занимая 6 194 место в категории Технологии и приложения и 30 800 место в регионе Россия.
📊 Показатели аудитории и динамика
С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 21 861 подписчиков.
Согласно последним данным от 13 июня, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило -49, а за последние 24 часа — -3, при этом общий охват остаётся высоким.
- Статус верификации: Не верифицирован
- Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 12.71%. В первые 24 часа после публикации контент обычно набирает 7.49% реакций от общего числа подписчиков.
- Охват публикаций: В среднем каждый пост получает 2 778 просмотров. В течение первых суток публикация набирает 1 638 просмотров.
- Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 9.
- Тематические интересы: Контент сосредоточен на ключевых темах, таких как .net, шарписта, навигация, await, string.
📝 Описание и контентная политика
Автор описывает ресурс как площадку для выражения субъективного мнения:
“Все самое полезное для C#-разработчика в одном канале.
Как запустить своего ии-агента: https://clc.to/tvpmDQ
По рекламе: @proglib_adv
Для обратной связи: @proglibrary_feeedback_bot
РКН: https://gosuslugi.ru/snet/67a5c81cdc130259d5b7fead”
Благодаря высокой частоте обновлений (последние данные получены 14 июня, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.
using Microsoft.SemanticKernel;
using Microsoft.SemanticKernel.Connectors.OpenAI;
using Microsoft.SemanticKernel.Audio;
// Конфиг
string apiKey = "sk-...";
string model = "gpt-4o";
// Создаем Kernel
var builder = Kernel.CreateBuilder();
builder.AddOpenAIChatCompletion(model, apiKey);
// Подключаем аудио-модель
builder.Services.AddOpenAIAudioChatCompletion(model, apiKey);
var kernel = builder.Build();
// Аудиофайл на вход (WAV или MP3)
var audioPath = "audio_input.wav";
var audioFile = new FileInfo(audioPath);
// Запускаем аудио-комплит
var audioChatService = kernel.GetRequiredService<IAudioChatCompletionService>();
var response = await audioChatService.GetAudioChatMessageContentAsync(
new OpenAIAudioChatRequestSettings { ResponseFormat = AudioResponseFormat.MP3 },
new AudioChatMessageContent(AuthorRole.User, audioFile)
);
// Сохраняем ответ в файл
await File.WriteAllBytesAsync("response.mp3", response.Audio);
Что происходит под капотом?
1. Модель GPT-4o получает аудиофайл
2. Распознаёт текст (ASR)
3. Генерирует ответ
4. Конвертирует его в речь
5. Возвращает MP3-ответ
💬 Уже придумали где применить? Админ бы заставил приложение ругаться на пользователя🧑💻 Делитесь своими идеями в комментариях 👇
➡️ Подробнее в блоге Microsoft
🐸Библиотека шарписта #бустvar numbers = Enumerable.Range(1, 20);
var evens = numbers.Where(x => x % 2 == 0);
evens.Dump("Чётные числа");
Набросали код и проверили с помощью Dump() что получилось.
🐸Библиотека шарписта #бустvar result = users.Where(u => u.IsActive).OrderBy(u => u.Name).ToList();
Но через месяц в проде: «А почему этот запрос делает 9 подзапросов, 3 джойна, и тянет всю таблицу в память, чтобы потом отфильтровать в приложении?..»
💬 А как вы считаете? LINQ это спасение от рутины или проблема? Пишите в комментарии 👇
🐸Библиотека шарписта #междусобойчикInstall-Package Microsoft.AspNetCore.Identity.EntityFrameworkCore Install-Package Microsoft.EntityFrameworkCore.SqlServer Install-Package Microsoft.EntityFrameworkCore.Tools• Настройте контекст данных и Identity:
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlServer(Configuration.GetConnectionString("DefaultConnection")));
services.AddIdentity<ApplicationUser, IdentityRole>()
.AddEntityFrameworkStores<ApplicationDbContext>()
.AddDefaultTokenProviders();
services.AddControllersWithViews();
}
2️⃣ Включение 2FA для пользователя
Теперь, когда Identity настроен, мы можем включить двухфакторную аутентификацию:
var user = await _userManager.GetUserAsync(User);
var tokenProvider = _userManager.GetTwoFactorAuthenticationTokenProvider(user);
var token = await _userManager.GenerateTwoFactorTokenAsync(user, tokenProvider);
// Отправить токен пользователю через email или SMS
3️⃣ Проверка введённого токена
После того как пользователь получит код на своем устройстве (например, через Google Authenticator), он должен ввести его на сайте. Проверка кода выглядит следующим образом:
var result = await _signInManager.TwoFactorSignInAsync("Authenticator", tokenInput, rememberMe, false);
if (result.Succeeded)
{
// Успешный вход
}
else
{
// Ошибка
}
💬 Пишите, где сталкивались с 2FA👇 Админ, к примеру, каждый раз тянется к телефону, когда логинится в GitHub
🐸Библиотека шарписта #буст"You are a seasoned C# developer and interviewer with 15+ years of experience. Your task is to conduct a mock technical interview for a candidate applying for a mid-level C# developer position. The interview will focus on core C# concepts, object-oriented programming principles, and common .NET framework features. Your approach will be to ask one question at a time, wait for the candidate's response, provide constructive feedback on their answer (highlighting strengths and areas for improvement), and then proceed to the next question. The goal is to simulate a real-world interview experience and help the candidate identify areas where they need to improve their knowledge. Here's the format you will follow for each question: --- Question: $interview_question [Pause for Candidate's Response] Feedback: * Strengths: $positive_feedback_on_answer * Areas for Improvement: $constructive_criticism_and_suggestions Next Question: $next_interview_question --- Begin the mock interview"🐸Библиотека шарписта #буст
Уже доступно! Исследование Telegram 2025 — ключевые инсайты года 
