Start Debugging

Тег: dotnet-11

119 статей · Страница9из12

Как построить собственный MCP-сервер на C# в .NET 11
Постройте рабочий сервер Model Context Protocol на C# 14 / .NET 11, используя официальный SDK ModelContextProtocol 1.2. Рассмотрены транспорт stdio, атрибуты [McpServerTool], внедрение зависимостей, ловушка с журналированием в stderr и регистрация в Claude Code, Claude Desktop и VS Code.
Как мокать DbContext, не ломая отслеживание изменений
Прямое мокание DbContext незаметно ломает ChangeTracker, поэтому Microsoft не рекомендует так делать. Это руководство показывает два паттерна, которые действительно работают в EF Core 11: SQLite в памяти с удерживаемым открытым соединением, чтобы запускался настоящий ChangeTracker, и паттерн репозитория, полностью убирающий EF Core из теста.
Как использовать Channels вместо BlockingCollection в C#
System.Threading.Channels это асинхронная замена BlockingCollection в .NET 11. В руководстве показано, как мигрировать, как выбирать между ограниченным и неограниченным каналом, и как обрабатывать backpressure, отмену и корректное завершение без deadlock-ов.
Как написать пользовательский JsonConverter в System.Text.Json
Полное руководство по написанию пользовательского JsonConverter<T> для System.Text.Json в .NET 11: когда он действительно нужен, как корректно работать с Utf8JsonReader, как обрабатывать обобщённые типы с помощью JsonConverterFactory и как оставаться совместимым с AOT.
Как генерировать строго типизированный клиентский код из спецификации OpenAPI в .NET 11
Используйте Kiota, официальный генератор OpenAPI от Microsoft, для создания fluent-клиента на C# со строгой типизацией из любой спецификации OpenAPI. Пошагово: установка, генерация, подключение к DI в ASP.NET Core и настройка аутентификации.
Как передавать файл из конечной точки ASP.NET Core без буферизации
Отдавайте большие файлы из ASP.NET Core 11, не загружая их в память. Три уровня: PhysicalFileResult для файлов на диске, Results.Stream для произвольных потоков и Response.BodyWriter для генерируемого контента -- с кодом для каждого случая.
Назад Вперёд