将所有控制器都继承AsyncController是一个好的做法吗?

4
标题非常清晰。我现在有一个继承自“Controller”类的应用程序-BaseController。
随着新的.NET Framework 4.5和ASP.NET MVC 4的推出,我想要使用C# 5中可用的新的更简单的异步功能。我想使用一些带有异步功能的操作方法(而不是全部)。
改变当前基类从“Controller”到“AsyncController”是否有任何问题?(非异步操作方法的性能是否更差?)
所以你对此有什么看法?
感谢每个回答。
编辑:通过ILSpy,我看到AsyncController类没有任何代码(MVC 4)。正如@Trevor Pilley所说,它只是为了向后兼容MVC 3。
public abstract class AsyncController : Controller
{
}

因此,在MVC 4中,我们不需要关注“AsyncController”或“Controller”基类。现在,“Controller”类可以同时处理两者。
1个回答

7
如果您正在迁移到MVC 4,Controller类支持异步操作。AsyncController仅用于与MVC 3的向后兼容性。 AsyncController类 - “ASP.NET MVC 4及更高版本中的Controller类支持异步模式。”
考虑到这一点,我认为它可能没有太大区别,也不必担心。

谢谢你的回答!我不知道在ASP.NET MVC 4中异步操作可以与“常规”Controller类一起使用。 - rafe
如果您发现从继承自“Controller”而不是“AsyncController”的控制器的异步路由不起作用,您可能需要查看https://dev59.com/rnnZa4cB1Zd3GeqPr5Z0。 - mjwills

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接