2012-08-31 49 views
3

標題非常清楚。我有一個應用程序 - BaseController現在繼承自「Controller」 - 類。使用新的.NET Framework 4.5和ASP.NET MVC 4,我想使用C#5中提供的新的更簡單的異步功能。我喜歡使用一些具有異步功能的操作方法(而不是所有)。當所有的控制器都從AsyncController繼承時,這是否是一個好習慣?

是否有任何缺陷將當前基類從「Controller」更改爲「AsyncController」? (對於非異步操作方法,性能較差?)

那麼您怎麼看待它?

感謝您的每一個答案。

編輯:在我看到的ILSpy中,AsyncController類不包含任何代碼(MVC 4)。正如@Trevor Pilley說,它只是在那裏向後兼容MVC 3

public abstract class AsyncController : Controller 
{ 
} 

所以,我們並不需要我們去關心「AsyncController」或「控制器」的基礎。 「控制器」類現在可以在MVC 4中處理。

回答

6

如果您正在轉移到MVC 4,則Controller類將支持異步內容。 AsyncController僅用於與MVC 3向後兼容。

AsyncController Class - 「ASP.NET MVC 4及更高版本中的Controller類支持異步模式。」

考慮到這一點,我想說如果&不會產生任何影響,它可能不會產生太大的影響。

+0

感謝您的回答!我不知道異步的東西可以與ASP.NET MVC 4中的「常規」控制器類一起使用。 – rafe

+0

如果您發現從控制器發出的異步路由從Controller繼承,而不是從AsyncController繼承沒有工作,你可能想在https://stackoverflow.com/questions/20221603/task-async-controller-method-does-not-hit上有一個squiz。 – mjwills

相關問題