Библиотека шарписта | C#, F#, .NET, ASP.NET
22.9K subscribers
2.24K photos
35 videos
85 files
4.41K links
Все самое полезное для C#-разработчика в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/b60af5a4

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5c81cdc130259d5b7fead
Download Telegram
📝 Создаем красивую документацию API с помощью Scalar в ASP.NET Core

Документация для API — это не просто набор ссылок и описаний. Это инструмент, который помогает разработчикам быстрее понять, как использовать ваш сервис. Используя Scalar, можно превратить стандартный Swagger в нечто действительно элегантное.

Процесс не сложный, а результат превзойдет все ожидания.

➡️ Прочитать статью

🐸Библиотека шарписта
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10
💡 Красочно про LINQ

Подготовили для вас шпаргалку по методам LINQ.

💾 Сохраняйте себе, чтобы не потерять


🐸Библиотека шарписта #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍70🥱18🔥136
Что выведет код сверху?

👾 — 8
👍 — 8 0
🥰 — 8 3
🥱 — Error

Библиотека задач по C#
🥱240🥰33👍1😢1🤩1
📅 IT Календарь: онлайн события от Microsoft

Этой весной планируются сразу два крупных мероприятия, связанные с разработкой.

📌 .NET Conf — апрель

Ивент, где эксперты Microsoft расскажут о модернизации приложений под .NET с помощью AI-инструментов, переходе в облако с .NET Aspire, интеграции ИИ и миграции с WinForms на Blazor.

📌 Microsoft Build 2025 — май

Ежегодное событие для разработчиков, где компания представляет новые продукты, технологии и инструменты, которые помогают создавать современные приложения и решения.

🐸Библиотека шарписта #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
🎭 Dev Memes: 1 апреля, а баги всё те же

Сегодня день официально разрешённого троллинга — и мы не могли пройти мимо. Собрали подборку мемов для Шарпистов, которые вызывают лёгкое желание уволиться.

👉 Всё это — из нашего мемного канала «Библиотека IT-мемов»

🐸Библиотека шарписта
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁13👍31🔥1🤔1
🛠 Инструмент недели: MoreLINQ

MoreLINQ — это расширение LINQ для .NET, которое добавляет десятки полезных методов, отсутствующих в стандартной библиотеке.

Что внутри:

• DistinctBy, MaxBy, MinBy — упрощают выборку уникальных и экстремальных значений

• Batch, Buffer — удобно работать с кусками коллекций

• Scan — похоже на Aggregate, но возвращает все промежуточные состояния

• Lag, Lead — доступ к предыдущим и последующим элементам последовательности

• Shuffle, Permutations, Subsets — алгоритмы для сложных операций с наборами

➡️ Репозиторий инструмента

💬 Делитесь в комментариях каких методов не хватает в LINQ👇

🐸Библиотека шарписта #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍82
Forwarded from Библиотека программиста | программирование, кодинг, разработка
💻🧩 Когда HR требует LeetCode Hard: почему компании стреляют себе в ногу

Когда твоя компания не Google, но хочет отбирать кандидатов как Google — получается дорогой фейл и текучка талантов. Разбираемся в трендах IT-рекрутинга, которые выглядят как выстрел в ногу.

➡️ Читать статью

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🤖 Промпт дня: техническое интервью по C#

Представьте, что у вас есть безлимитное время опытного C# разработчика. Проявите себя в условиях «реального» собеседования и получите ценную обратную связь, чтобы понять, какие аспекты вашего опыта стоит прокачать.

Для этого используем вот такой промпт:
"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"


🐸Библиотека шарписта #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👏7😁3
🔥 Программисты, нужен ваш совет!

Пилим крутую подборку ноутов для кодеров в 2025-м и хотим собрать реальный фидбек от тех, кто в теме!

Какой ноут спасает вас в кодинге и почему?

Расскажите все:

• Что за зверь (модель, начинка)
• Где жмет и где радует в ежедневной работе
• На какие фишки смотреть при выборе
• Как вам с ним живется

Топовые советы попадут в нашу статью!

💬 Делитесь в комментах 👇 Сделаем годный гайд, который реально поможет коллегам!

🐸Библиотека шарписта
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8😁3🥱3💯1
⚙️ Как использовать 2FA в .NET приложении

Сейчас покажем, как настроить двухфакторную аутентификацию (2FA) в вашем .NET приложении с использованием библиотеки .NET Identity.

1️⃣ Установка и настройка .NET Identity

• Добавьте необходимые пакеты NuGet:
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

🐸Библиотека шарписта #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥7🥰2❤‍🔥1🤩1
👨‍💻 LINQ — магия C# или чёрная дыра производительности

Когда впервые видишь LINQ — это как будто дали волшебную палочку:
var result = users.Where(u => u.IsActive).OrderBy(u => u.Name).ToList();

Но через месяц в проде: «А почему этот запрос делает 9 подзапросов, 3 джойна, и тянет всю таблицу в память, чтобы потом отфильтровать в приложении?..»

💬 А как вы считаете? LINQ это спасение от рутины или проблема? Пишите в комментарии 👇

🐸Библиотека шарписта #междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱26👍61
🛠 LINQPad — инструмент для быстрых экспериментов

LINQPad — это интерактивная среда для запуска C#-кода без создания проектов, солюшенов и прочей бюрократии.

Почему это мастхэв:

Быстрая проверка идей — пиши и запускай на лету

Dump() — метод, которого не хватало

Даёт мгновенный вывод структуры объекта, с деревьями, списками, полями и цветами. Идеален для отладки.

Поддержка EF Core, SQL и даже NoSQL

Поддержка NuGet прямо в редакторе

Пример:
var numbers = Enumerable.Range(1, 20);
var evens = numbers.Where(x => x % 2 == 0);

evens.Dump("Чётные числа");


Набросали код и проверили с помощью Dump() что получилось.

➡️ Попробовать LINQPad

🐸Библиотека шарписта #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥71
Forwarded from Библиотека программиста | программирование, кодинг, разработка
😺🐙🧼 Сам себе GitHub: как работать с чистым Git-репозиторием

Git — мощная система контроля версий, которую обычно используют через платформы вроде GitHub и GitLab. Однако Git сам по себе не требует веб-интерфейсов и облачных сервисов. Многие разработчики предпочитают работать с чистым Git-репозиторием, размещенным на собственном сервере.

➡️ В этой статье мы рассмотрим, почему это удобно, и как эффективно отправлять патчи в проекты, использующие этот подход.

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10💯42
💬 Сколько у вас решено задач на литкоде

🐸Библиотека шарписта #развлекалово
Please open Telegram to view this post
VIEW IN TELEGRAM
😁264