是否有.net mvc的应用程序控制器,如ruby on rails?

我有一些导航的东西,每次请求页面时都需要访问数据库。 在Rails中,我只需在ApplicationController.rb中设置一个实例变量,该变量可供每个控制器/视图使用。

现在我看到我所有的控制器都是固有的:.NET MVC中的Controller。 我可以为Controller打开一个部分类,并添加一个动作filter,它会在每次请求页面时调用它吗?

或者我应该创建一个ApplicationController:Controller,并让我所有其他控制器inheritance吗?

Controller是一个抽象(非部分)类,因此您需要创建一个扩展Controller并让控制器inheritance它的基本控制器类。 您可以在http://aspnet.codeplex.com/SourceControl/ListDownloadableCommits.aspx找到源代码(目前适用于RC1)。 或者,您可以使用适当的自定义ActionFilterAttribute简单地修饰控制器,但我的偏好是自定义基本控制器,除非filter需要为每个控制器获取不同的参数。