Ben*_*enM 3 .net c# asp.net-mvc dry actionresult
我有一个相当大的MVC Web应用程序,我在每个控制器中重复一个操作,看看客户是否已经完成了应用程序进程(在这种情况下,我检查了他们的配置文件中的标志).理想情况下,我想从每个操作方法中删除此代码,并将其应用于返回操作结果的所有操作方法.
您可以创建一个自定义属性来处理此问题,您可以在Controller级别或ActionResult级别拥有该属性.
[CompletedApplication("User")]
public ActionResult YourAction
{
return View();
}
public class CompletedApplicationAttribute : AuthorizeAttribute
{
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
// Your logic here
return true;
}
}
Run Code Online (Sandbox Code Playgroud)