2022-09-28 07:52:40 +08:00
|
|
|
---
|
|
|
|
title: "ASP0014: Suggest using top level route registrations"
|
|
|
|
description: "Learn about analysis rule ASP0014: Suggest using top level route registrations"
|
2022-11-12 03:13:16 +08:00
|
|
|
author: captainsafia
|
2022-09-28 07:52:40 +08:00
|
|
|
monikerRange: '>= aspnetcore-7.0'
|
|
|
|
ms.author: safia
|
|
|
|
ms.date: 09/27/2022
|
|
|
|
uid: diagnostics/asp0014
|
|
|
|
---
|
|
|
|
# ASP0014: Suggest using top level route registrations
|
|
|
|
| | Value |
|
|
|
|
|-|-|
|
|
|
|
| **Rule ID** |ASP0014|
|
|
|
|
| **Category** |Usage|
|
|
|
|
| **Fix is breaking or non-breaking** |Non-breaking|
|
|
|
|
|
|
|
|
## Cause
|
|
|
|
|
|
|
|
Routes can be registered directly at the top-level of a minimal API application.
|
|
|
|
|
|
|
|
## Rule description
|
|
|
|
|
|
|
|
Routes can be registered directly at the top-level of a minimal API application and don't need to be nested within a `UseEndpoints` call.
|
|
|
|
|
|
|
|
```csharp
|
|
|
|
var builder = WebApplication.CreateBuilder(args);
|
|
|
|
|
|
|
|
var app = builder.Build();
|
|
|
|
|
|
|
|
app.UseEndpoints(endpoints =>
|
|
|
|
{
|
|
|
|
endpoints.MapGet("/", () => "Hello World!");
|
|
|
|
});
|
|
|
|
|
|
|
|
app.Run();
|
|
|
|
```
|
|
|
|
|
|
|
|
## How to fix violations
|
|
|
|
|
|
|
|
To fix a violation of this rule, register the endpoints directly on the `WebApplication`.
|
|
|
|
|
|
|
|
```csharp
|
|
|
|
var builder = WebApplication.CreateBuilder(args);
|
|
|
|
|
|
|
|
var app = builder.Build();
|
|
|
|
|
|
|
|
app.MapGet("/", () => "Hello World!");
|
|
|
|
|
|
|
|
app.Run();
|
|
|
|
```
|
|
|
|
|
|
|
|
## When to suppress warnings
|
|
|
|
|
|
|
|
Do ***not*** suppress a warning from this rule.
|