Ich überprüfte die System.Web.Mvc.AsyncController in MVC 4.0, es hat den Kommentar "für die Abwärtskompatibilität mit ASP.NET MVC 3 bereitgestellt." bedeutet dies, dass es eine neue Implementierung von asynchronen Controllern in MVC 4 gibt? Was ist der richtige Weg in MVC 4.0 async einen Controller zu aktivieren, um die I/O intensive Operationen in anderen Thread-Pool als IIS Anfrage Thread-Pool zu setzen?Async-Controller in ASP.NET MVC
9
A
Antwort
12
Ausgehend von ASP.NET MVC 4, können Sie jetzt die System.Web.Mvc.Controller
Klasse als Basisklasse verwenden und die TAP (Task-basierte asynchrone Muster) nutzen:
public async Task<ViewResult> Index() {
return View(await GetThingsAsync());
}
Beachten Sie, dass Sie nicht zu Verwenden Sie die Schlüsselwörter async
und await
, die mit C# 5.0 geliefert werden, aber sie machen die asynchrone Programmierung viel einfacher und wartungsfreundlicher.
Werfen Sie einen Blick auf die folgenden Artikel:
Verwandte Themen
- 1. ASP.NET MVC AsyncController xxxCompleted
- 2. ASP.NET MVC AsyncController zusammen mit NHibernate
- 3. AsyncController fehlt in MVC 6
- 4. WebClient in ASP.NET MVC asynchron verwenden?
- 5. Inheritance of Action in AsyncController
- 6. Implementieren einer Fortschrittsleiste für lange laufende Aufgabe mit einem ASP.NET MVC 2 implementiert AsyncController
- 7. HTML.Button in ASP.NET MVC
- 8. Suchformular in asp.net MVC
- 9. LinkButton in ASP.NET MVC
- 10. ASCX in ASP.NET MVC
- 11. Summernote in Asp.Net MVC
- 12. Webhook in Asp.net MVC
- 13. Modellwarnungen in ASP.NET MVC
- 14. Zeitzonen in ASP.NET MVC?
- 15. Entitätsdiagramme in ASP.NET MVC
- 16. Identitätswechsel in ASP.NET MVC
- 17. Tabs in ASP.NET MVC
- 18. Ajax in Asp.net mvc
- 19. Asp.NET MVC in Unterordner
- 20. Protokollierungsfehler in ASP.NET MVC
- 21. Sitzungsende in ASP.net MVC
- 22. ReturnUrl in ASP.NET MVC
- 23. Statusverwaltung in ASP.NET MVC
- 24. FCKEditor in asp.net-mvc
- 25. iText in Asp.net MVC
- 26. Paging in asp.net Mvc
- 27. Caching in asp.net-mvc
- 28. ASP.Net VS ASP.Net MVC
- 29. ASP.NET MVC ohne ASP.NET?
- 30. asp.net MVC
Nicht 'async' und' await' kommen mit C# 4.5, nicht 5.0? – Spook
@Spook gibt es keine C# 4.5: https://en.wikipedia.org/wiki/C_Sharp_(programming_language)#Versions async/erwarten Sprache Unterstützung kam mit C# 5.0 und es benötigt auch .NET 4.5. Sie können .NET 4.0 verwenden und die Async/aware-Sprachfunktionen mit einem NuGet-Paket des BCL-Teams nutzen: http://www.nuget.org/packages/Microsoft.Bcl.Async/ – tugberk