Start Debugging

ASP.NET Core

120 статей · Страница1из12

grpc-dotnet 2.85 применяет MaxReceiveMessageSize после распаковки, а не только до неё

Grpc.AspNetCore и Grpc.Net.Client 2.85.0 теперь применяют MaxReceiveMessageSize к распакованному размеру сообщений gzip и deflate. Запрос в 260 КБ, который разворачивается в 256 МиБ, отклоняется с ResourceExhausted, но и легитимные крупные сжатые данные могут начать завершаться ошибкой.

MudBlazor 9.12: медленные ServerData и поиск в Autocomplete больше не перезаписывают более новые результаты

MudBlazor 9.12.0 исправляет давнюю гонку в MudAutocomplete, MudDataGrid и MudTable: побеждал результат поиска, завершившегося последним, а не запущенного последним. Разбираем, как работает исправление и что меняется в вашем коде ServerData и SearchFunc.

Исправление: Response.Cookies.Append не устанавливает cookie в браузере в ASP.NET Core

Заголовок Set-Cookie отправляется, но браузер отклоняет его или так и не сохраняет cookie. Исправляем SameSite=None без Secure, отсутствие credentials: 'include' вместе с AllowCredentials, политику согласия и поздние вызовы Append.

Ignite UI for Blazor переходит на MIT: более 50 бесплатных компонентов в IgniteUI.Blazor.Lite 1.0.0

Infragistics открыла под лицензией MIT более 50 элементов управления Ignite UI for Blazor и выпустила IgniteUI.Blazor.Lite и IgniteUI.Blazor.GridLite 1.0.0 для net8.0, net9.0 и net10.0. Что именно бесплатно, как это подключить и на какие подводные камни стоит обратить внимание.

.NET 10.0.14 вышел вне очереди: переполнение буфера при распаковке Brotli и два повторно выпущенных октябрьских CVE

Внеплановый релиз от 25 октября 2026 года (.NET 8.0.33, 9.0.22, 10.0.14, 11 RC3) исправляет переполнение буфера в Brotli, уязвимость с владельцами файлов в Linux-архивах tarball и два CVE, которые патчи от 13 октября закрыли не полностью.
2026-10-26 dotnetcsharplogging

Как использовать разные шаблоны вывода Serilog для разных уровней журналирования из appsettings.json

outputTemplate задаётся для sink целиком, поэтому для форматирования по уровням нужен либо ExpressionTemplate с блоками {#if @l ...}, либо два вложенных логгера Logger с фильтрами ByIncludingOnly / ByExcluding. Оба варианта настраиваются только через appsettings.json, проверено на Serilog 4.4, Serilog.Settings.Configuration 10.0.1 и Serilog.Expressions 5.0.

Agent Framework 1.26: конечные точки AG-UI больше не превращают scoped-агентов в синглтоны

Microsoft Agent Framework 1.26.0 заставляет MapAGUIServer разрешать keyed AIAgent, его AgentSessionStore и провайдер ключа изоляции на каждый запрос, а также добавляет перегрузку с селектором, который выбирает агента по HttpContext.

Как пометить ответ действия контроллера как допускающий null во встроенном документе OpenAPI в ASP.NET Core

Microsoft.AspNetCore.OpenApi помечает ответ как допускающий null, только когда действие возвращает голый T? (а в .NET 10 не помечает даже Task<T?>). ActionResult<T?> и IActionResult теряют аннотацию и в .NET 10, и в .NET 11 RC2. Здесь разобрано, почему так происходит, показан проверенный трансформер операций, который это исправляет, и ловушка с 204 No Content, из-за которой спецификация лжёт, пока вы не измените форматтер MVC.

Как удалить или скрыть отдельные endpoint, которые MapIdentityApi добавляет в ASP.NET Core

MapIdentityApi<TUser>() добавляет десять endpoint и не позволяет пропустить ни один из них. Вот четыре проверенных способа справиться с этим на .NET 11: скрыть endpoint из OpenAPI, заставить его возвращать 404, перекрыть его или полностью убрать из маршрутизации, плюс ловушка /confirmEmail, из-за которой регистрация превращается в 500.
Вперёд