【问题标题】:Authorize Attribute and modal dialog授权属性和模式对话框
【发布时间】:2012-02-03 10:14:29
【问题描述】:

我想在用户单击需要身份验证的操作时显示模式窗口。 我看到了这个问题和答案: ASP.NET MVC Authorize Attribute to launch a modal?

我从答案中得到 PopupAuthorizeAttribute,并在 Site.Master 文件中写道:

<% if((bool)(ViewData["OpenAuthorizationPopup"] ?? true)) { %>
<script type="text/javascript">
alert("Login needed")</script> **for test
<% } %>

该消息仅在页面加载时显示。但是当我点击一个动作(使用 PopupAuthorize)时,动作仍然有效。

【问题讨论】:

    标签: asp.net-mvc


    【解决方案1】:

    您可能希望在您的自定义 PopupAuthorize 属性上 override OnAuthorization() 并在其中您可以重定向到可以返回所需 ActionResultJsonResult 的任何控制器的任何操作,例如,您可以在模态中弹出。

    public override void OnAuthorization(AuthorizationContext filterContext)
    {
        UrlHelper urlHelper = new UrlHelper(filterContext.RequestContext);
        filterContext.Result = new RedirectResult(urlHelper.Action("Denied", "Access"));
    } 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-10-19
      • 2011-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-16
      • 2016-11-20
      相关资源
      最近更新 更多