Nguon: Microsoft Learn · .NET 8.0

ASP0014: Đề xuất dùng đăng ký route (tuyến đường) ở cấp độ cao nhất

Nguồn: ASP0014: Suggest using top level route registrations

-Giá trị
Rule IDASP0014
CategoryUsage (Cách sử dụng)
Fix is breaking or non-breakingNon-breaking (Không phá vỡ tương thích)

Nguyên nhân

Các route (tuyến đường) có thể được đăng ký trực tiếp ở cấp độ cao nhất (top-level) của ứng dụng Minimal API.

Mô tả quy tắc

Các route có thể được đăng ký trực tiếp ở cấp độ cao nhất của ứng dụng Minimal API và không cần lồng bên trong lệnh gọi UseEndpoints.

csharp
var builder = WebApplication.CreateBuilder(args);

var app = builder.Build();

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

app.Run();

Cách khắc phục vi phạm

Để khắc phục vi phạm quy tắc này, hãy đăng ký các endpoint (điểm cuối) trực tiếp trên WebApplication.

csharp
var builder = WebApplication.CreateBuilder(args);

var app = builder.Build();

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

app.Run();

Khi nào nên bỏ qua cảnh báo

Có thể bỏ qua cảnh báo từ quy tắc này nếu lệnh gọi UseEndpoints được gọi mà không có ánh xạ (mapping) nào, như một chiến lược để sắp xếp thứ tự middleware (phần mềm trung gian).

csharp
var builder = WebApplication.CreateBuilder(args);

var app = builder.Build();

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

app.Run();