Start Debugging

ASP.NET Core 11

10 Beiträge

Wie Sie einen Datenbankschreibvorgang und einen Azure Blob Storage Upload in einer einzigen ASP.NET-Core-Anfrage konsistent halten

Es gibt keine Transaktion, die SQL Server und Blob Storage umspannt. Laden Sie unter einen Namen hoch, den die Datenbank bereits kennt, committen Sie danach, kompensieren Sie im Fehlerfall, und lassen Sie einen Sweeper das Absturzfenster aufräumen. Inklusive der UploadAsync-Überladung, die ein bedingtes Erstellen still in ein Überschreiben verwandelt.

Eine ProblemDetails-Antwort nach RFC 9457 mit einem typisierten HttpClient lesen, ohne ASP.NET Core zu referenzieren

Die BCL kennt keinen ProblemDetails-Typ, und ein FrameworkReference auf Microsoft.AspNetCore.App sorgt dafür, dass Ihr Client in einem Container mit reiner Laufzeit gar nicht erst startet. Hier ist das 20-Zeilen-Modell, der DelegatingHandler, der problem+json in eine typisierte Ausnahme verwandelt, und der Content-Type-Mythos, den die meisten Antworten bis heute wiederholen.

Validierungslogik zwischen Server und Blazor WebAssembly teilen

Die größte Quelle für Validierungs-Drift in einer Blazor-WebAssembly-plus-ASP.NET-Core-Anwendung ist der Drang, die Regeln zweimal zu schreiben. Diese Anleitung zeigt das einzige Layout, das in .NET 11 skaliert: eine Shared-Klassenbibliothek, der die DTOs und ihre Validatoren gehören, eingebunden vom WASM-Client (EditForm + DataAnnotationsValidator oder Blazored.FluentValidation) und vom Server (Endpoint-Filter in Minimal API oder MVC-Modellbindung), mit einem getesteten Round-Trip, der ValidationProblemDetails vom Server zurück in den EditContext überträgt.