次の方法で共有


ASP0014: 最上位レベルのルート登録の使用を提案する

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

原因

ルートは、Minimal API アプリケーションの最上位レベルで直接登録できます。

ルールの説明

ルートは、Minimal API アプリケーションの最上位レベルで直接登録でき、 UseEndpoints 呼び出し内で入れ子にする必要はありません。

var builder = WebApplication.CreateBuilder(args);

var app = builder.Build();

app.UseEndpoints(endpoints =>
{
    endpoints.MapGet("/", () => "Hello World!");
});

app.Run();

違反を修正する方法

この規則違反を修正するには、エンドポイントを WebApplicationに直接登録します。

var builder = WebApplication.CreateBuilder(args);

var app = builder.Build();

app.MapGet("/", () => "Hello World!");

app.Run();

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

ミドルウェアの順序付けを整理する戦略として、マッピングなしでターゲット UseEndpoints 呼び出しが呼び出された場合、この規則からの警告を抑制できます。

var builder = WebApplication.CreateBuilder(args);

var app = builder.Build();

#pragma warning disable ASP0014
app.UseEndpoints(e => {});
#pragma warning restore ASP0014

app.Run();