Udostępnij za pośrednictwem


ASP0016: Nie zwracaj wartości z elementu RequestDelegate

Wartość
Identyfikator reguły ASP0016
Kategoria Użycie
Poprawka powodująca niezgodność lub niezgodność Niezgodność

Przyczyna

Metoda użyta do utworzenia RequestDelegate metody zwraca .Task<T> RequestDelegate odrzuca tę wartość.

Opis reguły

Nie zwracaj wartości Delegatedostarczonej do interfejsów API, które oczekują RequestDelegate. Na przykład poniższy przykład zwraca wartość Task<string> , w której string wartość Task zostanie odrzucona.

var app = WebApplication.Create();
app.Use(next =>
{
    return new RequestDelegate((HttpContext context) =>
    {
        return Task.FromResult(""hello world"");
    });
});

Jak naprawić naruszenia

Aby naprawić naruszenie tej reguły, zmień typ powrotu na niegeneryczny Task lub, jeśli delegat jest procedurą obsługi tras, rzutuj ją na tak, aby Delegate wartość zwracana była zapisywana w odpowiedzi.

Kiedy pomijać ostrzeżenia

Nie pomijaj ostrzeżeń dla tej reguły.