我有一个asp.net Web应用程序,由具有不同角色的不同用户访问。
现在我要基于逻辑涉及上下文变量和用户角色来启用/禁用和显示/隐藏控件(标签,文本框,网格中的按钮,第三方控件)。
我想避免在onLoad
方法中编写IF语句。
我试图像这样创建一个xml文件:
<root>
<page name="page1" mode="insert">
<control id="txtName" property="Visible" value="True" />
然后在basePage
类中,我尝试使用propertyInfo循环所有Page.Controls
以设置属性。
当我在ascx或gridview中使用ascx并使用命令按钮禁用时,问题就开始了。
可以在外部配置文件中配置这些控件的行为吗?
是否有允许这样的框架?
答案 0 :(得分:1)
.NET框架控件本身并不这样做。但是,执行此操作的最佳方法是创建控件库,覆盖通常使用的控件,然后让每个控件执行XML文件查找,并导入设置。
控制进入存储库的成本要低得多,而不是遍历控件然后再进行工作的页面。
HTH。