Start Debugging

Тег: dotnet-11

87 статей · Страница4из9

Как настроить структурированное журналирование с Serilog и Seq в .NET 11
Полное руководство по подключению Serilog 4.x и Seq 2025.2 к приложению .NET 11 ASP.NET Core: AddSerilog против UseSerilog, двухэтапное журналирование при старте, конфигурация через JSON, обогатители, журналирование запросов, корреляция трассировок OpenTelemetry, API-ключи и продакшн-нюансы вокруг буферизации, хранения и уровня сигнала.
Как использовать OpenTelemetry с .NET 11 и бесплатным бэкендом
Подключите трейсы, метрики и логи OpenTelemetry в приложение ASP.NET Core .NET 11 через OTLP-экспортёр и отправляйте данные на бесплатный самохостинг-бэкенд: standalone Aspire Dashboard для локальной разработки, Jaeger и SigNoz для самохостинговой продакшн-среды и OpenTelemetry Collector, когда нужны и тот и другой.
Как писать интеграционные тесты против настоящего SQL Server с помощью Testcontainers
Полное руководство по запуску интеграционных тестов ASP.NET Core против настоящего SQL Server 2022 с использованием Testcontainers 4.11 и EF Core 11: настройка WebApplicationFactory, IAsyncLifetime, подмена регистрации DbContext, применение миграций, параллелизм, очистка через Ryuk и подводные камни CI.
VSTest отказывается от Newtonsoft.Json в .NET 11 Preview 4 и что сломается, если вы полагались на него транзитивно
.NET 11 Preview 4 и Visual Studio 18.8 поставляют VSTest, который больше не протаскивает Newtonsoft.Json в ваши тестовые проекты. Сборки, тихо использовавшие транзитивную копию, сломаются, и чинятся одной строкой PackageReference.
Как добавить ограничение скорости для отдельных endpoint в ASP.NET Core 11
Полное руководство по ограничению скорости (rate limiting) для отдельных endpoint в ASP.NET Core 11: когда выбирать fixed window против sliding window, token bucket или concurrency, чем отличаются RequireRateLimiting и [EnableRateLimiting], партиционирование по пользователю или IP, callback OnRejected и ловушка распределённого развёртывания, в которую попадают все.
Как вызвать Claude API из Minimal API на .NET 11 со стримингом
Стримьте ответы Claude из minimal API на ASP.NET Core 11 от начала до конца: официальный Anthropic .NET SDK, TypedResults.ServerSentEvents, SseItem, IAsyncEnumerable, поток отмены и подводные камни, которые молча буферизуют ваши токены. С примерами для Claude Sonnet 4.6 и Opus 4.7.
Как использовать новый тип System.Threading.Lock в .NET 11
System.Threading.Lock появился в .NET 9 и стал стандартной примитивой синхронизации в .NET 11 и C# 14. Это руководство показывает, как мигрировать с lock(object), как работает EnterScope и какие подводные камни связаны с await, dynamic и поддержкой старых таргетов.
Как написать генератор исходного кода для INotifyPropertyChanged
Полное руководство по созданию собственного инкрементального генератора исходного кода для INotifyPropertyChanged в C# 14 и .NET 11: пайплайн IIncrementalGenerator, маркерные атрибуты, вывод partial class, паттерн SetProperty и как оставаться совместимым с AOT.
Как определить, что запись файла в .NET завершена
FileSystemWatcher срабатывает на Changed до того, как писатель закончил. Три надёжных паттерна для .NET 11, чтобы узнать, что файл полностью записан: открытие с FileShare.None, дебаунс по стабилизации размера и трюк с переименованием на стороне продьюсера, который полностью устраняет проблему.
Как разделить логику валидации между сервером и Blazor WebAssembly
Главный источник расхождений в валидации между Blazor WebAssembly клиентом и ASP.NET Core API -- это соблазн писать правила дважды. Это руководство показывает единственную раскладку, которая масштабируется в .NET 11: библиотека классов Shared, владеющая DTO и их валидаторами, потребляемая и WASM клиентом (EditForm + DataAnnotationsValidator или Blazored.FluentValidation), и сервером (фильтр endpoint в minimal API или model binding в MVC), с протестированным циклом, который возвращает серверные ValidationProblemDetails обратно в EditContext.
Назад Вперёд