首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

这两句是什么意思,高手帮小弟我注解一上

2013-02-19 
这两句是什么意思,高手帮我注解一下 if (Session[loginName].ToString().ToLower() ! tsoft)((ImageB

这两句是什么意思,高手帮我注解一下
 if (Session["loginName"].ToString().ToLower() != "tsoft")
            ((ImageButton)DataList1.Items[0].FindControl("ImageButton1")).Visible = false;
[解决办法]
如果存在Session["loginName"]中的字符串转换成小写不等于"tsoft"
就在datelist第一行找name="ImageButton1"的图片按钮并把它隐藏
[解决办法]
 if (Session["loginName"].ToString().ToLower() != "tsoft")
 这个语句有隐藏的Bug.若Session["loginName"]过期,即 Session["loginName"]=null时,此语句会抛出异常Object reference not set to an instance of an object. 
最好改成 if (Session["loginName"]!=null&&Session["loginName"].ToString().ToLower() != "tsoft")
[解决办法]

引用:
if (Session["loginName"].ToString().ToLower() != "tsoft")
            ((ImageButton)DataList1.Items[0].FindControl("ImageButton1")).Visible = false;
              
              
      ……

Session["loginName"]:估计是你登录的时候把用户名写入了session,这里检查下它,ToString()是把这个session对象转成字符串,ToLower()是把这个字符串转成小写的。也就是1楼说的登陆用户名的小写。

DataList1.Items[0]表示页面上的id为DataList1的DataList的第一个行,FindControl("ImageButton1")是在这个第一行中寻找id为ImageButton1的ImageButton按钮。前面加了个(ImageButton)是显示的把这个对象转成成ImageButton,最后的Visible = false;让它不可见
[解决办法]
if (Session["loginName"].ToString().ToLower() != "tsoft")
             ((ImageButton)DataList1.Items[0].FindControl("ImageButton1")).Visible = false; 
翻译为:如果登录名转换成小写等于“tsoft”,DataList1控件中第一个节点的“ImageButton1”控件设置为隐藏

热点排行