2012-11-09 16 views
9

में असिंक नियंत्रक मैंने एमवीसी 4.0 में System.Web.Mvc.AsyncController की जांच की है, इसकी टिप्पणी "एएसपी.नेट एमवीसी 3 के साथ पिछड़े संगतता के लिए प्रदान की गई है।" क्या इसका मतलब है कि एमवीसी 4 में एसिंक नियंत्रक का नया कार्यान्वयन है? एमआईसी 4.0 में सही तरीका क्या है IIS अनुरोध थ्रेड पूल के अलावा अन्य थ्रेड पूल में I/O तीव्र संचालन को रखने के लिए एसिंक नियंत्रक को सक्षम करता है?एएसपी.नेट एमवीसी

उत्तर

12

ASP.NET MVC 4 से शुरू, अब आप आधार वर्ग के रूप में System.Web.Mvc.Controller वर्ग का उपयोग करें और नल (टास्क आधारित अतुल्यकालिक पैटर्न) का लाभ उठाने कर सकते हैं:

public async Task<ViewResult> Index() { 

    return View(await GetThingsAsync()); 
} 

नोट आप की जरूरत नहीं है कि async और await कीवर्ड का उपयोग करें जो सी # 5.0 के साथ आते हैं लेकिन वे असीमित प्रोग्रामिंग को बहुत अधिक आसान और अधिक रखरखाव करते हैं।

+0

नहीं 'async' और' await' सी # 4.5, नहीं 5.0 के साथ आता है:

निम्न लेख पर एक नज़र है? – Spook

+2

@Spook कोई सी # 4.5 नहीं है: https://en.wikipedia.org/wiki/C_Sharp_(programming_language)#Versions async/प्रतीक्षा भाषा समर्थन सी # 5.0 के साथ आया और इसे .NET 4.5 की भी आवश्यकता है। आप .NET 4.0 का उपयोग कर सकते हैं और बीसीएल टीम से NuGet पैकेज के साथ async/प्रतीक्षा भाषा सुविधाओं का लाभ उठा सकते हैं: http://www.nuget.org/packages/Microsoft.Bcl.Async/ – tugberk

संबंधित मुद्दे