ASP0004: Do not use action results with route handlers
Value | |
---|---|
Rule ID | ASP0004 |
Category | Usage |
Fix is breaking or non-breaking | Non-breaking |
Cause
A route handler delegate returns a value that implements IActionResult.
Rule description
Route handler endpoints do not support executing MVC's IActionResult
instances. Returning an IActionResult
that doesn't implement IResult
results in serializing the result instance rather than executing the result.
app.MapGet("/todos/{id}", (int id) => new JsonResult(new Todo { .. }));
How to fix violations
To fix a violation of this rule, make sure that endpoint's route handler returns an IResult type by using the Results extension methods.
app.MapGet("/todos/{id}", (int id) => Results.Json(new Todo { .. }));
When to suppress warnings
Do not suppress a warning from this rule. Returning an IActionResult
that doesn't implement IResult
results in serializing the result instance rather than executing the result.
ASP.NET Core
Σχόλια
https://aka.ms/ContentUserFeedback.
Σύντομα διαθέσιμα: Καθ' όλη τη διάρκεια του 2024 θα καταργήσουμε σταδιακά τα ζητήματα GitHub ως μηχανισμό ανάδρασης για το περιεχόμενο και θα το αντικαταστήσουμε με ένα νέο σύστημα ανάδρασης. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα:Υποβολή και προβολή σχολίων για