ASP0009: WebApplicationBuilder.WebHost에서 구성을 사용하지 마세요

규칙 ID ASP0009
범주 사용
수정 사항이 주요 변경인지 여부 주요 변경 아님

원인

ConfigureWebApplicationBuilderWebHost 속성과 함께 사용할 수 없습니다.

규칙 설명

WebApplicationBuilderConfigure 확장 메서드를 사용하여 빌드하기 전에 WebHost을 구성하는 것을 지원하지 않습니다.

var builder = WebApplication.CreateBuilder(args);

builder.WebHost.Configure(webHostBuilder => {
    webHostBuilder.UseContentRootPath(Path.Combine(Directory.GetCurrentDirectory(), "myContentRoot"));
});

var app = builder.Build();

app.Run();

위반 문제를 해결하는 방법

이 규칙의 위반 문제를 해결하려면 WebApplicationBuilder에서 WebHost를 직접 구성합니다. 예를 들어, Configure를 통해 콘텐츠 루트 경로를 설정하는 대신.

var builder = WebApplication.CreateBuilder(args);

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

var app = builder.Build();

app.Run();

WebApplicationBuilder에서 직접 콘텐츠 루트 경로를 구성합니다.

var builder = WebApplication.CreateBuilder(args);

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

var app = builder.Build();

app.Run();

경고를 표시하지 않는 경우

이 규칙에서는 경고를 표시하지 않아야 합니다. 잘못 구성된 애플리케이션은 런타임에 예기치 않은 동작을 초래할 수 있습니다.