asp.net if语句为什么不能执行
if(!IsPostBack){if(Session["roleID"]!=null){if(Session["roleID"].ToString()=="1"){MyS...
if(!IsPostBack)
{
if (Session["roleID"] != null)
{
if (Session["roleID"].ToString() == "1")
{
MySiteMapDS.SiteMapProvider = "site1";
// this.MySiteMapDS.Provider = System.Web.SiteMap.Providers["site1"];
}
//MySiteMapDS.SiteMapProvider = "site1";//管理员
else if (Session["roleID"].ToString() == "2")
this.MySiteMapDS.Provider = System.Web.SiteMap.Providers["site2"];
// MySiteMapDS.SiteMapProvider = "site2";//普通用户
}
} 展开
{
if (Session["roleID"] != null)
{
if (Session["roleID"].ToString() == "1")
{
MySiteMapDS.SiteMapProvider = "site1";
// this.MySiteMapDS.Provider = System.Web.SiteMap.Providers["site1"];
}
//MySiteMapDS.SiteMapProvider = "site1";//管理员
else if (Session["roleID"].ToString() == "2")
this.MySiteMapDS.Provider = System.Web.SiteMap.Providers["site2"];
// MySiteMapDS.SiteMapProvider = "site2";//普通用户
}
} 展开
1个回答
展开全部
如果是最外层的if语句if(!IsPostBack)不能执行,那是因为他只执行一次,在第一次打开页面时执行,其它时候刷新提交都不执行
如果是第二层if (Session["roleID"] != null)没有执行,那就是Session["roleID"] 为 null了
如果第三层if (Session["roleID"].ToString() == "1")没执行那就是Session["roleID"].ToString() 不等于 "1",这很好识别啊
就第一层比较特殊,第二层和第三层都和Session["roleID"]的值有关系,你只要添加监视,监视一下它的值是什么就行了.
如果是第二层if (Session["roleID"] != null)没有执行,那就是Session["roleID"] 为 null了
如果第三层if (Session["roleID"].ToString() == "1")没执行那就是Session["roleID"].ToString() 不等于 "1",这很好识别啊
就第一层比较特殊,第二层和第三层都和Session["roleID"]的值有关系,你只要添加监视,监视一下它的值是什么就行了.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询