Start Debugging

Блог

Страница 32 из 91

2026-08-04 dotnetnugetci-cd

API-ключи NuGet ограничат 30 днями с 17 августа, а все старые ключи истекут 1 ноября

NuGet.org убирает опцию 365-дневного API-ключа 2026-08-17, ограничивает новые ключи 30 днями и 1 ноября аннулирует все ключи, созданные до этой даты. Что сломается и как перевести workflow публикации на trusted publishing через OIDC.

Как реализовать оптимистичную конкурентность с токеном rowversion в EF Core 11

Добавляем токен конкурентности rowversion в EF Core 11: настройка через [Timestamp] и IsRowVersion, SQL, который EF действительно генерирует, перехват DbUpdateConcurrencyException, побеждает база vs побеждает клиент vs слияние, отсоединённые API с ETag и пять ловушек, которые молча отключают всю защиту.

Как валидировать опции при старте с помощью IValidateOptions<T> в .NET 11

Реализуйте IValidateOptions<T>, зарегистрируйте его во внедрении зависимостей и добавьте ValidateOnStart, чтобы неверный appsettings.json убивал процесс, а не первый запрос, который его затронет. Разбираются перегрузка Validate<TValidator>() из .NET 11, асинхронная валидация через IAsyncValidateOptions<T> и три случая, когда ValidateOnStart молча ничего не делает.

Как настроить Kestrel для работы по HTTP/3 в ASP.NET Core 11

Полное руководство по включению HTTP/3 в Kestrel в ASP.NET Core 11: настройка конечной точки через HttpProtocols.Http1AndHttp2AndHttp3, требования MsQuic к платформе в Windows, Linux и macOS, почему первый запрос никогда не идёт по HTTP/3, проверка через HttpClient и middleware, настройка QuicTransportOptions и проблемы с firewall и прокси, из-за которых происходит тихий откат.

Как заменить new Regex(...) на генератор исходного кода [GeneratedRegex] в .NET 11

Полное руководство по переходу с new Regex(pattern, RegexOptions.Compiled) на [GeneratedRegex] в .NET 11: механическая переработка кода, частичные методы против частичных свойств, измеренные показатели запуска и пропускной способности, диагностики SYSLIB1040-1045 и два случая, когда генератор молча откатывается к закешированному Regex.

Как выполнять ресурсоёмкие вычисления в приложении Blazor WebAssembly с помощью Web Workers в .NET 11

Полное руководство по выносу ресурсоёмких вычислений с UI-потока Blazor WebAssembly в .NET 11: почему Task.Run не помогает, новый шаблон blazorwebworker, API WebWorkerClient с отменой и таймаутами, ограничения маршалинга JSExport и цена второй среды выполнения на каждый worker.

Лучшая идея нового агента модульных тестов для .NET не в написании тестов

2026-07-31 Microsoft выпустила полиглотного агента модульных тестов в dotnet/skills. Самое интересное в нём: обязательная проверка, которая применяет псевдомутацию к вашим утверждениям, прежде чем агент имеет право сказать, что работа закончена.