行 30:     {
行 31:         if (uscs.MemberManage!= UserClass.LoginSate.OK)
行 32:        Response.Redirect("../Loign.aspx");行 33:         Member = MemberBLL.GetModel(uscs.YixiUserName);
行 34:     }
母版页不能使用这个么  我注册js也是同样错误 就是未将对象引用到实例  if里面的判断完全没错 运行到
Response.Redirect("../Loign.aspx");就出现这样的错误  帮看看啊

解决方案 »

  1.   

    Member = MemberBLL.GetModel(uscs.YixiUserName); 
    这句报错吧??
      

  2.   

    Member = MemberBLL.GetModel(uscs.YixiUserName); 这个不可能 运行都没运行到这 怎么报错啊?
      

  3.   

    汗~~
    Response.Redirect("../Loign.aspx"); 
    这句也不至于报黄页啊~~
      

  4.   

    原因,许多开发者对于Response.Redirect的使用方法不了解,大多数值知道用它来转到其他个页面,却忽视了一个参数。其实它的完整形式是Response.Redirect(string Url,bool endResponse);
    一般情况下第二个参数endResponse默认为false。
    如果直接Response.Redirect("../Loign.aspx");那么它在转到其他页面后仍人执行了后面的语句。相当于Response.Redirect("../Loign.aspx",false);如果我们不想让Response.Redirect("../Loign.aspx");后继续执行原页面,则需要使用:Response.Redirect("../Loign.aspx",true);楼主属于第二种情况
    解决办法:
    将Response.Redirect("../Loign.aspx");
    改为:
    Response.Redirect("../Loign.aspx",true);
      

  5.   

    其实关于asp.net的书上面应该都讲了。函数有许多重载的形式,我们平时用的函数形式比较简单,很大程度上忽略了一些默认参数,而这些默认参数如果在一些情况下不注意的话,会引发很难排查的错误。
      

  6.   

    分析下,其实错误是这句Member = MemberBLL.GetModel(uscs.YixiUserName),但是为什么这句会报错呢?一般情况下Response.Redirect已经转到其他页面了,为什么它还是执行了这句了呢。其实Response.Redirect之后还是会继续执行页面的代码的,除非你使用率了Response.Redirect("../Loign.aspx",true);的形式。往往我们会忽视这个参数的存在。
    导致了Member = MemberBLL.GetModel(uscs.YixiUserName)仍然执行了,这句显然由于某些参数为null引发错误:未将对象引用到实例。if (uscs.MemberManage!= UserClass.LoginSate.OK) 
       Response.Redirect("../Loign.aspx");
    Member = MemberBLL.GetModel(uscs.YixiUserName);//这句报错了。