1

我有一个名为 NotificationManager 的静态类,每次调用控制器方法时,我都想将 ModelErrors 存储在 NotificationManager 中。

但是,在 NotificationManager 内部,我无法访问 ModelState,因为它不在实际控制器内部。

有没有办法在控制器方法完成后自动调用方法,而不必在每个控制器方法中编写它?

注意:我需要使用视图中的值。

4

3 回答 3

4

覆盖控制器中的 OnActionExecuted。你还有 ViewData[]

protected override void OnActionExecuted(ActionExecutedContext filterContext)
{
    //Do your stuff
    base.OnActionExecuted(filterContext);
}
于 2013-08-07T15:52:39.990 回答
4

您可以创建一个全局 ActionFilter 并覆盖OnActionExecuted

或者,您可以在视图中放置一个子操作。

于 2013-08-07T15:51:23.520 回答
0

您可以覆盖 Controller 类中的方法来执行此操作:

http://msdn.microsoft.com/en-us/library/gg416513(v=vs.98).aspx

http://msdn.microsoft.com/en-us/library/system.web.mvc.controller.onactionexecuted(v=vs.98).aspx

于 2013-08-07T15:51:19.990 回答