MvcSiteMapProvider 显示“未授权”的节点

发布于 2024-12-14 07:23:44 字数 159 浏览 0 评论 0原文

另一个希望相当微不足道的 mvcSiteMap 问题:

我有一些节点,我只想在用户授权时显示它们,例如登录链接。我真的必须编写自己的可见性提供程序吗?

或者,asp.net mvc 操作是否有一个过滤器属性表示“未授权”?

干杯, 达菲

Another hopefully rather trivial mvcSiteMap problem:

I have a few nodes that I only want to show if the user is not authorized, such as the login link. Do I really have to write my own visibility provider?

Alternatively, is there a filter attribute for an asp.net mvc action that expresses "not authorized"?

Cheers,
Duffy

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

风柔一江水 2024-12-21 07:23:45

创建 GuestOnly 属性可能就是您想要的。这对我有用:

using System.Web.Mvc;
using System.Web;

namespace Wingspan.Web.Mvc.Attributes
{
    public class GuestOnlyAttribute : AuthorizeAttribute
    {    
        protected override bool AuthorizeCore(HttpContextBase httpContext)
        {
            return !base.AuthorizeCore(httpContext);
        }
    }
}

Creating a GuestOnly attribute is probably what you want. This works for me:

using System.Web.Mvc;
using System.Web;

namespace Wingspan.Web.Mvc.Attributes
{
    public class GuestOnlyAttribute : AuthorizeAttribute
    {    
        protected override bool AuthorizeCore(HttpContextBase httpContext)
        {
            return !base.AuthorizeCore(httpContext);
        }
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文