次の方法で共有


ASP0008: WebApplicationBuilder.Host で ConfigureWebHost を使用しないでください

価値
ルール識別子 ASP0008
カテゴリ Usage
修正が破壊的であるか非破壊的であるか Non-breaking

原因

ConfigureWebHostは、HostWebApplicationBuilder プロパティでは使用できません。

ルールの説明

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();

警告を抑制するタイミング

このルールからの警告を抑制 しないでください 。 アプリケーションが正しく構成されていないと、実行時に予期しない動作が発生する可能性があります。