Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#ASP控制面板链接仅对角色管理员可见_C#_Asp.net - Fatal编程技术网

C#ASP控制面板链接仅对角色管理员可见

C#ASP控制面板链接仅对角色管理员可见,c#,asp.net,C#,Asp.net,如何使链接仅对管理员可见?由于我希望在我的网页上有一个控制面板链接,因此如果用户登录并且他在角色组“admin”中,该链接将可见。假设您的管理员组在数据库中有一个唯一的ID,我将使用以下内容: <% If intLoggedInUserGroupID = 1 Then Response.Write "<a href=""nimda.asp"">Admin Page</a>" %> 如果您在asp.net下使用C#,请在ie背后的代码中使用 private

如何使链接仅对管理员可见?由于我希望在我的网页上有一个控制面板链接,因此如果用户登录并且他在角色组“admin”中,该链接将可见。

假设您的管理员组在数据库中有一个唯一的ID,我将使用以下内容:

<% If intLoggedInUserGroupID = 1 Then Response.Write "<a href=""nimda.asp"">Admin Page</a>" %>

如果您在asp.net下使用C#,请在ie背后的代码中使用

private void Page_Load (object sender, System.EventArgs e)
{
    // ... previous code ...

    // Add the following code:
    if (Context.User.IsInRole("Admin"))
    {
        myLink.Visible = true;
    }
    else
    {
        myLink.Visible = false;
    }

    // ... following code ...
}
你可以看看这个链接,可能会有所帮助
即使是框架2.0的链接,操作原理也是一样的

您的问题留下了许多空白

您使用的是服务器端链接按钮还是HTML锚? 您希望在服务器端还是客户端处理它

无论如何,解决方案的基准是,当您处理为链接生成HTML的代码时,您必须知道用户登录的角色。这可以通过几种方式实现


然后,您可以根据需要使用该链接执行任何您想要的操作。Als这可以通过几种方式完成。

请不要在.NET问题中使用经典的ASP标记。经典ASP是一种早于.NET的技术,不支持C#。您是如何获得
intLoggedInUserID
?我会在他们登录时从数据库中读取它,以及网站可能需要的一些其他变量。这取决于你到底在做什么:)对不起,当这篇文章还在经典asp部分时,我回答说,它现在已经被移动到.net了-现在不确定我的原始答案是否相关…OP还将它标记为
C
,所以我编辑到
asp.net
,而不是
classic
。你可能是对的,但OP需要确认。我相信OP是指机器上的本地管理员(或来自Active Directory)