Поделиться через


ASP0008. Не используйте ConfigureWebHost с WebApplicationBuilder.Host

Значение
Идентификатор правила ASP0008
Категория Использование
Исправление является критическим или не критическим Не критическое

Причина

ConfigureWebHost нельзя использовать с свойством Host в WebApplicationBuilder.

Описание правила

Не WebApplicationBuilder поддерживает настройку перед сборкой WebHost с помощью ConfigureWebHost метода расширения.

var builder = WebApplication.CreateBuilder(args);

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

var app = builder.Build();

app.Run();

Устранение нарушений

Чтобы устранить нарушение этого правила, настройте WebHost его непосредственно в WebApplicationBuilder. Например, вместо настройки корневого пути содержимого с помощью ConfigureWebHost.

var builder = WebApplication.CreateBuilder(args);

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

var app = builder.Build();

app.Run();

Настройте корневой путь содержимого непосредственно в папке WebApplicationBuilder.WebHost.

var builder = WebApplication.CreateBuilder(args);

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

var app = builder.Build();

app.Run();

Когда лучше отключить предупреждения

Не подавляйте предупреждение из этого правила. Неправильно настроенное приложение может привести к непредвиденному поведению во время выполнения.