我在装有VS2005的自己机子上配置一个网站,运行都没发现错误,怎么一配置到局域网的一台相同Wind2003SP1机子上(只有装.NET Framewok2.0),怎么一打开这个网站,马上就出现了
Object reference not set to an instance of an object. 
Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.
而且我观察了一下,几乎都是Cookies空异常问题
如:
HttpContext.Current.Request.Cookies["AdminRole"].Value.ToString().ToLower()这个地方就出错
---------------------------------------错的模块都在进行权限判断模块。
该Cookies["AdminRole"]的值来源于,用户初次登陆我给它赋值的= cookie.Value = "progadmin";
                    Response.Cookies.Add(cookie);
                    //设置半小时后Cookies过期
                    HttpContext.Current.Response.Cookies["AdminRole"].Expires = DateTime.Now.AddHours(1.5);
                    //2007-10-12解决针对部分页面该Cookies策略
                    Response.Cookies["AdminRole"].Path = "/";

各位看看,究竟是我对Cookies的赋值写法有错,还是其他因素

解决方案 »

  1.   

    HttpContext.Current.Request.Cookies[ "AdminRole "]先判断一下吧
      

  2.   

    嗯,在异常前经常判断下,确实可以保证程序的运行正确,但一旦为空,我程序也就没多大作用在让用户继续下去了。也就是说这个Cookies[   "AdminRole   "]肯定要非空才行。不然我系统就意义了。现在的关键是这个值是来于用户刚登陆的那个页面。那我都根据上面给值
    了。为什么还会这样者了。另外又多了个概念要问大家:
    到底静态方法跟非静态方法有什么具体差别。
      

  3.   

    权限你还是用Session吧
    Cookie没事,用户也可以自己清除的。
    简单区别,不用实例化呗,用起来简单
      

  4.   

    空值了。就没什么作用了。我只是很好奇怎么COOKIES会丢失