Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.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/jquery_Asp.net_Vb.net_Servercontrols_Role Based - Fatal编程技术网

Asp.net 显示/隐藏基于角色的控件组,ASP/jquery

Asp.net 显示/隐藏基于角色的控件组,ASP/jquery,asp.net,vb.net,servercontrols,role-based,Asp.net,Vb.net,Servercontrols,Role Based,我见过有类似问题的人,有一个非常好的答案,与构建控制适配器有关。但我的情况有点不同: 我有一个ASP/VB.NET2010网站,大约有20多页。这些页面每个页面最多包含40个服务器控件。存在基于角色的访问要求。因此,TextBox1可能对角色1、2、4、7可见,而对其他角色不可见 蛮力方法就是,对于每个页面,迭代所有控件,并根据硬编码规则明确决定是否显示/隐藏它们,即 Textbox1.visible = (Session("role") = 1 Or Session("role") =

我见过有类似问题的人,有一个非常好的答案,与构建控制适配器有关。但我的情况有点不同:

我有一个ASP/VB.NET2010网站,大约有20多页。这些页面每个页面最多包含40个服务器控件。存在基于角色的访问要求。因此,TextBox1可能对角色1、2、4、7可见,而对其他角色不可见

蛮力方法就是,对于每个页面,迭代所有控件,并根据硬编码规则明确决定是否显示/隐藏它们,即

    Textbox1.visible = (Session("role") = 1 Or Session("role") = 4 Or Session("role") = 7)
这当然是可行的,但编码和维护起来很麻烦。有人能想出一条捷径吗?我曾考虑过在html中使用自定义属性,但这不是第一步。ControlAdapter方法无法工作

这似乎是一个比较常见的问题,所以我希望有人能想出一个优雅的解决方案。谢谢