User.IsInRole 错误

发布于 2024-11-30 08:18:57 字数 318 浏览 3 评论 0原文

我在 Site.Master.csPage_Load 中有这段代码。

if(User.IsInRole("Read"))
{
   NavigationMenu.Visible = false;
}

我收到此错误:

非静态字段、方法或对象需要对象引用 财产 'Microsoft.VisualBasic.ApplicationServices.User.IsInRole(字符串)。

有什么线索吗?

I have this code inside the Page_Load of the Site.Master.cs.

if(User.IsInRole("Read"))
{
   NavigationMenu.Visible = false;
}

and I get this error:

An object reference is required for the non-static field, method, or
property
'Microsoft.VisualBasic.ApplicationServices.User.IsInRole(string).

Any clues?

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

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

发布评论

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

评论(3

守望孤独 2024-12-07 08:18:57

您可以获取当前的 HttpContext 用户 并使用 IsInRole 方法如下。

HttpContext.Current.User.IsInRole("Read")

将方法更改为

if(HttpContext.User.IsInRole("Read"))
{
   NavigationMenu.Visible = false;
}

You can get current HttpContext user and validate for given role using IsInRole method as below.

HttpContext.Current.User.IsInRole("Read")

Change your method as

if(HttpContext.User.IsInRole("Read"))
{
   NavigationMenu.Visible = false;
}
独木成林 2024-12-07 08:18:57

看起来您正在使用该类而不是该类的实例尝试:

User user = new User();
user.IsInRole("Read");

Looks like you are using the class instead an instance of that class try:

User user = new User();
user.IsInRole("Read");
林空鹿饮溪 2024-12-07 08:18:57

我不完全同意这个答案。您将从母版页中的 Page 属性获取 User 实例,因此您应该使用:

var user = Page.User;
user.IsInRole("your role");

I don't fully agree with the answer. You are getting the User instance from the Page property in your master page, so you should use:

var user = Page.User;
user.IsInRole("your role");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文