Udostępnij za pośrednictwem


ASP0008: Nie używaj polecenia ConfigureWebHost z aplikacją WebApplicationBuilder.Host

Wartość
Identyfikator reguły ASP0008
Kategoria Użycie
Poprawka powodująca niezgodność lub niezgodność Niezgodność

Przyczyna

ConfigureWebHost nie można używać z właściwością Host w pliku WebApplicationBuilder.

Opis reguły

Element WebApplicationBuilder nie obsługuje konfigurowania przed kompilacją WebHost ConfigureWebHost przy użyciu metody rozszerzenia.

var builder = WebApplication.CreateBuilder(args);

builder.Host.ConfigureWebHost(webHostBuilder => {
    webHostBuilder.UseContentRoot(Path.Combine(Directory.GetCurrentDirectory(), "myContentRoot"));
});

var app = builder.Build();

app.Run();

Jak naprawić naruszenia

Aby naprawić naruszenie tej reguły, skonfiguruj element WebHost bezpośrednio w pliku WebApplicationBuilder. Na przykład zamiast ustawiać ścieżkę katalogu głównego zawartości za pomocą polecenia ConfigureWebHost.

var builder = WebApplication.CreateBuilder(args);

builder.Host.ConfigureWebHost(webHostBuilder =>
{
    webHostBuilder.UseContentRoot(Path.Combine(Directory.GetCurrentDirectory(), "myContentRoot"));
});

var app = builder.Build();

app.Run();

Skonfiguruj ścieżkę katalogu głównego zawartości bezpośrednio w pliku WebApplicationBuilder.WebHost.

var builder = WebApplication.CreateBuilder(args);

builder.WebHost.UseContentRoot(Path.Combine(Directory.GetCurrentDirectory(), "foobar"));

var app = builder.Build();

app.Run();

Kiedy pomijać ostrzeżenia

Nie pomijaj ostrzeżenia z tej reguły. Nieprawidłowo skonfigurowana aplikacja może spowodować nieoczekiwane zachowanie w czasie wykonywania.