Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.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
Asp.net 基于用户显示网页内容';用户访问权限_Asp.net - Fatal编程技术网

Asp.net 基于用户显示网页内容';用户访问权限

Asp.net 基于用户显示网页内容';用户访问权限,asp.net,Asp.net,我有几个ASP.NET页面具有相同的行为: 每个页面都有自己的内容(例如表格和表格) 每个页面链接到2个web用户控制文件以显示菜单框 在页面_Init上,检查用户是否有权查看内容。如果他们没有访问权限,页面将显示一条消息,而不会显示剩余内容。菜单框仍将显示 我是ASP.NET的新手,所以我只能考虑根据访问权限对内容进行标记的可见性。我想知道是否还有其他的方法来解决这个问题。我正在用VB编写代码。请建议…使用您控制可见性的div标记是不好的,这意味着用户只需执行“查看源代码”,所有内容都将在那里

我有几个ASP.NET页面具有相同的行为:

  • 每个页面都有自己的内容(例如表格和表格)
  • 每个页面链接到2个web用户控制文件以显示菜单框
  • 页面_Init
    上,检查用户是否有权查看内容。如果他们没有访问权限,页面将显示一条消息,而不会显示剩余内容。菜单框仍将显示

  • 我是ASP.NET的新手,所以我只能考虑根据访问权限对内容进行
    标记的可见性。我想知道是否还有其他的方法来解决这个问题。我正在用VB编写代码。请建议…

    使用您控制可见性的div标记是不好的,这意味着用户只需执行“查看源代码”,所有内容都将在那里


    相反,您不应将内容添加到您使用的任何控件(或使用@Lloyd描述的控件)或自定义403页面(无访问权限)

    您可以在
    占位符中换行并简单地将其关闭,例如:

    <asp:PlaceHolder ID="AuthUserStuff" runat="server">
        <div>
            ...
        </div>
    </asp:PlaceHolder>
    
    占位符
    还有一个额外的优点,即如果隐藏内容,则不会呈现给客户端

    AuthUserStuff.Visible = User.IsAuthenticated;