每次控制器方法结束时调用方法
本文关键字:方法 调用 结束 控制器 | 更新日期: 2023-09-27 18:26:49
我有一个名为NotificationManager的静态类,每次调用控制器方法时,我都希望将ModelErrors存储在NotificationManager中。
但是,在NotificationManager中,我无法访问ModelState,因为它不在实际控制器中。
有没有任何方法可以在控制器方法完成后自动调用一个方法,而不必将其写入每个控制器方法中?
注意:我需要使用视图中的值。
覆盖控制器中的OnActionExecuted。您仍然有ViewData[]
protected override void OnActionExecuted(ActionExecutedContext filterContext)
{
//Do your stuff
base.OnActionExecuted(filterContext);
}
您可以创建一个全局ActionFilter并覆盖OnActionExecuted
。
或者,您可以在视图中放置子动作。
您可以覆盖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