Start Debugging

Тег: dotnet-11

222 статей · Страница1из23

Исправление: HTTP Error 500.30 - ASP.NET Core app failed to start после развёртывания на IIS
500.30 означает, что приложение выбросило исключение при запуске внутри w3wp.exe. Настоящее исключение уже находится в журнале приложений Windows под источником IIS AspNetCore Module V2. Сначала прочитайте его, а затем расставьте приоритеты: отсутствующий общий фреймворк, несоответствие разрядности пула приложений, отсутствующая конфигурация или права пула.
Как реализовать оптимистичную конкурентность с токеном 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.
IOptions<T> vs IOptionsSnapshot<T> vs IOptionsMonitor<T> в .NET 11
По умолчанию используйте IOptions<T>. Берите IOptionsMonitor<T>, когда синглтон должен видеть перезагрузку конфигурации, и IOptionsSnapshot<T> только тогда, когда scoped-потребителю нужно значение, стабильное в пределах одного запроса. Решает время жизни потребителя, а не форма настроек.
2026-07-30 errorsblazordotnet
Исправление: JavaScript interop calls cannot be issued at this time (предварительный рендеринг Blazor)
Предварительный рендеринг выполняет компонент на сервере без браузера, поэтому IJSRuntime бросает исключение. Перенесите вызов в OnAfterRenderAsync, проверяйте RendererInfo.IsInteractive или отключите предварительный рендеринг.
Вперёд