共用方式為


ASP0008:請勿搭配 WebApplicationBuilder.Host 使用 ConfigureWebHost

價值
規則識別碼 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();

隱藏警告的時機

請勿 不要 隱藏此規則的警告。 設定錯誤的應用程式可能會導致運行時間發生非預期的行為。