Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
WebHostBuilder, IWebHostund WebHost wurden in .NET 10 als veraltet markiert.
WebHostBuilder wurde durch HostBuilder (generischer Host) in ASP.NET Core 3.0 ersetzt und WebApplicationBuilder in ASP.NET Core 6.0 eingeführt. Diese neueren Alternativen sind der Ort, an dem zukünftige Investitionen stattfinden werden.
Eingeführt in Version
.NET 10 RC 1
Vorheriges Verhalten
Bisher können WebHostBuilder Sie einen Webhost ohne Kompilierungszeitwarnungen konfigurieren und erstellen.
Neues Verhalten
Ab .NET 10 erzeugt die Verwendung WebHostBuilder einer Compilerwarnung mit Diagnose-ID ASPDEPR004:
Warnung ASPDEPR004: WebHostBuilder ist zugunsten von HostBuilder und WebApplicationBuilder veraltet. Weitere Informationen finden Sie unter https://aka.ms/aspnet/deprecate/004.
Verwenden IWebHost oder WebHost erzeugt eine Compilerwarnung mit Diagnose-ID ASPDEPR008:
Warnung ASPDEPR008: WebHost ist veraltet. Verwenden Sie stattdessen HostBuilder oder WebApplicationBuilder. Weitere Informationen finden Sie unter https://aka.ms/aspnet/deprecate/008.
Art der einschneidenden Änderung
Diese Änderung kann sich auf die Quellkompatibilität auswirken.
Grund für Änderung
HostBuilder und WebApplication haben alle Merkmale und WebHostBuilder sind der Fokus zukünftiger Investitionen.
WebHostBuilder wurde durch den generischen Host in ASP.NET Core 3.0 ersetzt, und minimale APIs wurden WebApplicationBuilder in ASP.NET Core 6.0 eingeführt. Diese neueren Hostingmodelle bieten eine bessere Integration in das .NET-Ökosystem und sind der empfohlene Ansatz für neue Anwendungen.
Empfohlene Aktion
Migrieren von WebHostBuilder zu einem HostBuilder oder WebApplication:
Für Anwendungen, die die vollständigen Hostingfunktionen benötigen, migrieren Sie zu
HostBuilder:Before:
var hostBuilder = new WebHostBuilder() .UseContentRoot(Directory.GetCurrentDirectory()) .UseStartup() .UseKestrel(); // Test code might use TestServer: var testServer = new TestServer(hostBuilder);After:
using var host = new HostBuilder() .ConfigureWebHost(webHostBuilder => { webHostBuilder .UseTestServer() // If using TestServer. .UseContentRoot(Directory.GetCurrentDirectory()) .UseStartup() .UseKestrel(); }) .Build(); await host.StartAsync(); var testServer = host.GetTestServer();Für neue Anwendungen, insbesondere für Anwendungen, die minimale APIs verwenden, migrieren Sie zu WebApplicationBuilder.
Betroffene APIs
- Microsoft.AspNetCore.Hosting.WebHostBuilder
- Microsoft.AspNetCore.Hosting.IWebHost
- Microsoft.AspNetCore.WebHost