ASP.NET Core 8.0

Eintrag zuletzt aktualisiert am: 27.11.2023

ASP.NET Core 8.0 ist als Nachfolger von ASP.NET Core 7.0 am 14.11.2023 (zusammen mit .NET 8.0) erschienen.

Neuerungen in ASP.NET Core 8.0

  • Neues Protokoll in Kestrel: Named Pipes für die Inter-Prozess-Kommunikation via ListenNamedPipe("Pipename") im Rahmen von ConfigureKestrel()
  • Http/2 auf macOS
  • Bei gRPC-REST-Bridge (alias: ProtoBuffer-JSON-Transcoding) müssen die Dateien http.proto und annotations.proto nicht mehr explizit ins Projekt aufgenommen werden; sie werden automatisch importiert aus dem NuGet-Paket.
  • [FromKeyedServices] zum Konsumieren von DI-Diensten mit Schlüsselwert

Neue Middleware in ASP.NET Core 8.0

Verbesserungen in Visual Studio für ASP.NET Core

  • Parameter in Routen werden in Visual Studio nun farbig dargestellt. Das funktioniert in MVC, Razor Pages, Blazor, WebAPIs, Minimal WebAPIs (aber nicht in Razor Class Libraries!)

Verbesserungen für ASP.NET Core MVC

Verbesserungen für Minimal-APIs

  • Komplex Form Binding
  • Bei ASP.NET Core Minimal WebAPIs kann der Entwickler/die Entwicklerin nun beim Einsatz der Schnittstellen IFormCollection, IFormFile und IFormFileCollection auf den Zusatz [FromForm] verzichten
  • Übergabe von Antiforgery-Token

Neue Code-Analyzer in ASP.NET Core 8.0

  • Warnung, wenn mehrere Parameter mit [FromBody] annotiert sind: Der Inhalt einer HTTP-Anfrage kann immer nur auf einen Parameter einer WebAPI-Operation abgebildet werden.
  • Analyzer warnt, wenn Parameter nicht verwendet wird
  • Request.Headers.Add() vermeiden und stattdessen Append() oder den Indexer verwenden
  • Bei Mininal-APIs gibt es eine Warnung, wenn TryParse() oder BindAsync() nicht die richtige Signatur aufweisen

Verbesserungen bei der ASP.NET Core 8.0-Sicherheit

Verbesserungen für Überwachung/Telemetrie, Skalierbarkeit und Hochverfügbarkeit

  • Microsoft.Extensions.Telemetry
  • Microsoft.Extensions.Http.Telemetry
  • Microsoft.Extensions.Http.Resilience und Microsoft.Extensions.Resilience
  • Microsoft.Extensions.Diagnostics.Probes
  • Microsoft.Extensions.Diagnostics.HealthChecks.Common
  • Microsoft.Extensions.Compliance.Testing
  • Microsoft.Extensions.Hosting.Testing
  • Microsoft.Extensions.Compliance.Redaction

Diese Pakete laufen aber nicht nur in .NET 8.0, sondern auch in .NET 6.0 und .NET Framework ab 4.6.2.

Verbesserungen für ASP.NET Core SignalR

  • Stateful Reconnect: nicht zugestellte Nachrichten werden bei eine Verbindungsausfalle noch später übertragen, nachdem Gegenseite wieder erreichbar. Der Timeout ist wählbar.

Neuerungen in ASP.NET Core Blazor 8.0

siehe Blazor 8.0