ASP0003: Keine Modellbindungsattribute mit Routenhandlern verwenden

Wert
Regel-ID ASP0003
Kategorie Verwendung
Fix führt oder führt nicht zur Unterbrechung Nicht unterbrechend

Ursache

Ein Routenhandlerdelegat enthält einen Parameter mit einem [Bind]-Attribut.

Regelbeschreibung

Routenhandlerendpunkte unterstützen nur eine Teilmenge von MVC-Attributen wie [FromRoute], [FromBody] usw. Nicht unterstützte Attributes werden ignoriert und führen zu unerwartetem Bindungsverhalten. Der folgende Code führt beispielsweise zu einer Analysewarnung:

app.MapGet("/todos/{id}", ([Bind] int id) => new Todo { Id = id });

Behandeln von Verstößen

Um einen Verstoß gegen diese Regel zu beheben, stellen Sie sicher, dass der Endpunkt eines der zulässigen Modellbindungsattribute verwendet.

app.MapGet("/todos/{id}", ([FromRoute] int id) => new Todo { Id = id });

Wann sollten Warnungen unterdrückt werden?

Unterdrücken Sie keine Warnung dieser Regel. Eine falsche Einrichtung der Modellbindung kann zur Laufzeit zu unerwartetem Verhalten beim Auflösen von Parametern führen.