Sdílet prostřednictvím


ASP0016: Nevrací hodnotu z RequestDelegate

Hodnota
Identifikátor pravidla ASP0016
Kategorie Použití
Oprava je destruktivní nebo nedestruktivní Nezlomitelný

Příčina

Metoda používaná k vytvoření RequestDelegate vrací Task<T>. RequestDelegate zahodí tuto hodnotu.

Popis pravidla

Nevracejte hodnotu Delegate poskytnutou rozhraním API, která očekávají RequestDelegate. Například následující ukázka vrátí Task<string>, kde bude hodnota stringTask ignorována.

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

Jak opravit porušení

Chcete-li opravit porušení tohoto pravidla, změňte návratový typ na jiný než obecný Task nebo, pokud je delegát obslužnou rutinou trasy, přetypujte ho tak Delegate , aby návratová hodnota byla zapsána do odpovědi.

Kdy potlačit upozornění

Nepotlačujte varování z tohoto pravidla.