我自己写了一个后台权限管理,可以为不同用户设定不同的权限,比如有些人只能浏览,有些人能修改
我在类PublicA里面弄了一个PermissionsDetermine函数,可以return到True或False的结果,通过以下语句
public PublicA PD = new PublicA();
Response.Write(PD.PermissionsDetermine(2));
已经看见页面上得到True或False
也可以通过if (PD.PermissionsDetermine(1))之类的语句进行判断但是我在前台aspx页面中碰到一个问题
比如有一个添加按钮
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text=" 添加 " Enabled="<%=PD.PermissionsDetermine(2)%>" />
页面出错,说
无法从其“Enabled”属性的字符串表示形式“<%=PD.PermissionsDetermine(2)%>”创建“System.Boolean”类型的对象
同样,在<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" HeaderText="操作"/>中,我想直接去替换引号里的True也会相同的错误。
求教!
我在类PublicA里面弄了一个PermissionsDetermine函数,可以return到True或False的结果,通过以下语句
public PublicA PD = new PublicA();
Response.Write(PD.PermissionsDetermine(2));
已经看见页面上得到True或False
也可以通过if (PD.PermissionsDetermine(1))之类的语句进行判断但是我在前台aspx页面中碰到一个问题
比如有一个添加按钮
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text=" 添加 " Enabled="<%=PD.PermissionsDetermine(2)%>" />
页面出错,说
无法从其“Enabled”属性的字符串表示形式“<%=PD.PermissionsDetermine(2)%>”创建“System.Boolean”类型的对象
同样,在<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" HeaderText="操作"/>中,我想直接去替换引号里的True也会相同的错误。
求教!
这样不就行了?Enabled=" <%=PD.PermissionsDetermine(2)%>" /> 这种写法是不对的!编译的时候
Enabled属性就要确定下来(或者用变量表示,后台cs代码!)。 <%= 这是asp写法,
解释执行! 不能混用的! 直接输出到页面True、False字符串这样写还行!
但是不知道怎么写<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" HeaderText="操作"/>这个里面的东西,比如怎么不让编辑和删除?
Button1.Visible=PD.PermissionsDetermine(2);if (e.Row.RowType == DataControlRowType.DataRow)
{
e.Row.FindControl("lab").Visible = false;
}
假设一个用户可以编辑数据,但不能删除。
如何在CS里为下面这句话做出限定?
<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" HeaderText="操作"/>
{
e.Row.FindControl("按钮的ID").Visible = false;
}
你不使用asp:CommandField,使用模板列,放删除、编辑、添加等几个按钮,分别设置ID就是了。
或者,你浏览aspx页面,鼠标右键查看HTML源代码,看看asp:CommandField对应生成的HTML代码是什么样子。
有人帮忙嘛?