Start Debugging

ASP.NET Core

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

Как добавить id текущего пользователя в каждую запись журнала в ASP.NET Core

Middleware с BeginScope пропускает запись об ошибке от обработчика исключений и строку Request finished. Зарегистрируйте ILogEnricher, который читает пользователя из IHttpContextAccessor, открывайте scope только тогда, когда работа выходит за пределы запроса, и учтите, что AddSerilog из Serilog молча отключает обогащение.

Как согласовать запись в базу данных и загрузку в Azure Blob Storage в рамках одного запроса ASP.NET Core

Транзакции, охватывающей SQL Server и Blob Storage, не существует. Загружайте по имени, которое база данных уже знает, фиксируйте вторым шагом, компенсируйте при сбое, а окно после аварии пусть подчищает фоновая уборка. Плюс перегрузка UploadAsync, которая молча превращает условное создание в перезапись.

Исправление: конечные точки API в ASP.NET Core возвращают 401 вместо перенаправления на страницу входа после обновления до .NET 10

В .NET 10 аутентификация через cookie отвечает API-подобным конечным точкам кодом 401/403 вместо перенаправления на страницу входа. Верните прежнее поведение для отдельной конечной точки, глобально или с помощью переключателя AppContext.

Как асинхронно создавать и распаковывать ZIP-файлы с помощью асинхронных API ZipArchive в .NET 11

Используйте ZipFile.CreateFromDirectoryAsync, ExtractToDirectoryAsync, ZipArchive.CreateAsync и ZipArchiveEntry.OpenAsync без скрытого синхронного ввода-вывода. Замеры на .NET 11 RC 1 и .NET 10.0.12, включая баг .NET 10, который до сих пор блокирует Kestrel.

Как привязать сложный объект из строки запроса с помощью [AsParameters] в minimal API в ASP.NET Core 11

Поставьте [AsParameters] на класс или record, чтобы привязать целый фильтр из строки запроса в minimal API в ASP.NET Core 11. Разбираем значения по умолчанию, массивы, перечисления, вложенные объекты, валидацию, OpenAPI и ошибку генератора Native AOT с позиционными record.

Юнионы C# в ASP.NET Core 11: тела запросов, SignalR и OpenAPI работают, query string нет

Команда ASP.NET Core описала, где типы union из C# 15 работают в .NET 11: тела запросов в minimal API и MVC, JsonHubProtocol в SignalR, Blazor и схемы anyOf в OpenAPI. Привязка из маршрута, query, заголовков и форм пока не поддерживается.

SignalR в .NET 11 RC 1 меняет истекающий токен, не разрывая соединение

API обновления аутентификации SignalR финализированы в .NET 11 RC 1: переименованные обратные вызовы у HubConnection, клиент на TypeScript и цепи Blazor Server, которые автоматически подхватывают обновлённый ClaimsPrincipal.

Что такое режим рендеринга в Blazor и какой из них выполняет мой компонент?

Режим рендеринга определяет, где выполняется компонент Razor и является ли он интерактивным. Здесь разобраны четыре режима в .NET 11, правила наследования, определяющие, что получит ваш компонент, и свойства RendererInfo и AssignedRenderMode, которые во время выполнения показывают, какой режим победил.

Что такое перехватчик EF Core и когда он нужен?

Перехватчик EF Core - это класс, который EF вызывает до и после операций вроде выполнения команды или SaveChanges и который может изменить или подавить их, а не только наблюдать. Здесь разобраны семь точек перехвата в EF Core 11, правила регистрации и времени жизни, а также случаи, когда фильтр запроса или обычное журналирование подходят лучше.
Назад Вперёд