Verwenden von async / await und Zurückgeben von TaskHttpResponseMessage aus ASP.NET-Web-API-Methoden

9

Ich habe eine Portable Class Library (PCL) -Methode wie folgt:

%Vor%

Meine ASP.NET Web API-Methode sieht folgendermaßen aus:

%Vor%

Welche Auswirkungen hat das Zurückgeben einer Aufgabe in der Web-API? Ist das erlaubt? Der einzige Grund, den ich verwenden möchte, ist, dass ich eine Portable Class Library (PCL) verwenden kann. Was ist die beste Praxis? Sollte ich eine synchrone Version meiner Methode und eine asynchrone Version haben? Was sind die Auswirkungen auf die Leistung und den Code, was Lesbarkeit und Wartbarkeit betrifft?

Würde ich auch den gleichen Effekt haben, wenn ich Task<string> anstatt Task<HttpResponseMessage> zurückgeben würde?

    
Muhammad Rehan Saeed 28.12.2012, 11:01
quelle

1 Antwort

4

Async und erwarten sind in ASP.NET vollkommen akzeptabel. Hier ist ein Scott Handselman Video, das es demonstriert: Ссылка

"Würde ich auch den gleichen Effekt haben, wenn ich Task<string> anstatt Task<HttpResponseMessage> zurückgegeben hätte?"

Nicht wirklich sicher, was du damit meinst. Die Aufgabe ist wie ein Container für das Objekt, also würde ein Task<string> das String-Ergebnis enthalten und ein Task<HttpResponseMessage> würde dein HttpResponseMessage-Ergebnis enthalten ... Meinst du das? Ich denke, dass jede Methode vollkommen akzeptabel ist. Wenn Sie nur die Zeichenfolge benötigen, dann gehen Sie damit. Es bringt nichts, mehr zurückzugeben, als du brauchst.

    
Pete 28.12.2012, 14:19
quelle