Ich benutze asp.net mvc-5 mit EF-6, und ich bin mir nicht sicher, ob die Verwendung erwarten + ToListAsync
gültig ist . Zum Beispiel habe ich die folgende Repository-Methode, die eine IQeuryable zurück: -Ist es korrekt, wenn ich wait + ToListAsync() über IQueryable, die nicht als eine Aufgabe definieren
public IQueryable<TSet> getAllScanEmailTo()
{
return t.TSets.Where(a=>a.Name.StartsWith("ScanEmail"));
}
Und ich es wie folgt anzurufenden: -
var emailsTo = await repository.getAllScanEmailTo().ToListAsync();
Zu Beginn obwohl ich mir einen Fehler, weil ich bin Verwenden Sie "erwarten" eine Methode, die nicht als eine Aufgabe definiert ist, aber die oben genannten funktioniert gut ,, so kann jemand bitte auf diese bitte?
Gute und vollständige Erklärung. –
@Yuval ich bin mir bereits dessen bewusst, aber normalerweise benutze ich warten auf eine Aufgabe, und die ganze Methode Kette in meinem Code wird Aufgabe + erwarten .. aber da ich nicht die IQueryable mit einer Aufgabe so wickeln kann ich tat es auf diese Weise, ich benutze IQueryable -> erwarten. tolistasync() ... also funktioniert dieser Code als - wenn der IQueryable in eine Aufgabe eingewickelt wird ?. also in meinem fall wird der iis thread freigegeben bis die tolistasync() vollständige ausführung fertig ist, wie normal funktionieren wird? –
@johnG Ja. Der Thread wird freigegeben, während die Abfrage ausgeführt wird, und zurückgegeben, sobald der Vorgang abgeschlossen ist. –