在 ASP.NET MVC 中基于控制器属性向视图模型添加错误消息

dna*_*oli 3 .net asp.net-mvc

我的控制器上有一个用于授权的自定义属性,可以在此处查看其详细信息。

如果此自定义属性返回false,则返回登录屏幕。如果属性返回 ,我想为登录屏幕的模型添加一个错误false

有任何想法吗?

dna*_*oli 5

对于那些正在寻找答案的人,这是我最终的做法:

protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
{
   if (filterContext.HttpContext.User.Identity.IsAuthenticated)
   {
      var result = new ViewResult();
      result.ViewName = "NotAuthorized";
      result.MasterName = "_Layout";
      filterContext.Result = result;
   }
   else
      base.HandleUnauthorizedRequest(filterContext);
}
Run Code Online (Sandbox Code Playgroud)