ASP0009:不要使用含 WebApplicationBuilder.WebHost 的 Configure
值 | |
---|---|
規則識別碼 | ASP0009 |
類別 | 使用方式 |
修正程式是中斷或非中斷 | 不中斷 |
原因
Configure
不能與 WebApplicationBuilder
上的 WebHost
屬性一起使用。
檔案描述
WebApplicationBuilder
不支援在使用 Configure
擴充方法建置之前設定 WebHost
。
var builder = WebApplication.CreateBuilder(args);
builder.WebHost.Configure(webHostBuilder => {
webHostBuilder.UseContentRootPath(Path.Combine(Directory.GetCurrentDirectory(), "myContentRoot"));
});
var app = builder.Build();
app.Run();
如何修正違規
若要修正此規則的違規問題,請直接在 WebHost
上設定 WebApplicationBuilder
。 例如,而不是透過 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();
隱藏警告的時機
請不要隱藏此規則的警告。 設定錯誤的應用程式可能會導致在執行階段出現非預期的行為。