Share via


ASP0008: não use ConfigureWebHost com WebApplicationBuilder.Host

Valor
ID da regra ASP0008
Categoria Uso
Correção interruptiva ou sem interrupção Sem interrupção

Causa

ConfigureWebHost não pode ser usado com a propriedade Host em WebApplicationBuilder.

Descrição da regra

O WebApplicationBuilder não dá suporte à configuração de WebHost antes da compilação usando o método de extensão ConfigureWebHost.

var builder = WebApplication.CreateBuilder(args);

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

var app = builder.Build();

app.Run();

Como corrigir violações

Para corrigir uma violação dessa regra, configure o WebHost diretamente no WebApplicationBuilder. Por exemplo, em vez de definir o caminho raiz do conteúdo por meio de ConfigureWebHost.

var builder = WebApplication.CreateBuilder(args);

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

var app = builder.Build();

app.Run();

Configure o caminho raiz do conteúdo diretamente no WebApplicationBuilder.WebHost.

var builder = WebApplication.CreateBuilder(args);

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

var app = builder.Build();

app.Run();

Quando suprimir avisos

Não suprima um aviso nessa regra. Um aplicativo configurado incorretamente pode resultar em um comportamento inesperado em runtime.