ASP0016: Do not return a value from RequestDelegate
Value | |
---|---|
Rule ID | ASP0016 |
Category | Usage |
Fix is breaking or non-breaking | Non-breaking |
Cause
A method used to create a RequestDelegate returns Task<T>
. RequestDelegate
discards this value.
Rule description
Do not return a value Delegate
s provided to APIs that expect RequestDelegate
. For example, the following sample returns a Task<string>
where the string
value of the Task
will be discarded.
var app = WebApplication.Create();
app.Use(next =>
{
return new RequestDelegate((HttpContext context) =>
{
return Task.FromResult(""hello world"");
});
});
How to fix violations
To fix a violation of this rule, change the return type to non-generic Task
or, if the delegate is a route handler, cast it to Delegate
so the return value is written to the response.
When to suppress warnings
Do not suppress a warning from this rule.
Collaborate with us on GitHub
The source for this content can be found on GitHub, where you can also create and review issues and pull requests. For more information, see our contributor guide.
ASP.NET Core