ASP.NET2.0用ajaxpro.net做的聊天室,自己本机上测试可以,但在其它的机器测试,有的可以,有的会报错!
测试网址:http://221.130.183.119:8001/Live_Player.aspx?Liveid=171
为什么有的机器可以正常进入聊天室,而有的机器访问,会出现
将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.NullReferenceException:
未将对象引用设置到对象的实例。
源错误:
行 56: //if (Request.Cookies[ "tmpUserInfo "] != null)
行 57: //{
行 58: return int.Parse(Session[ "roomid "].ToString());
行 59: //}
行 60: //return User.Identity.Name;
------解决方案--------------------return int.Parse(Session[ "roomid "].ToString());
改成
if(Session[ "roomid "] == null)
{
return -1;
}
else
{
return int.Parse(Session[ "roomid "].ToString());
}
------解决方案--------------------http协议是短连接协议,你可以设计自己的聊天室服务器把http协议改成长链接,长链接的话就是IE发起socket保持不断线,服务器有什么数据就马上发过来,真正的不需要刷新。如果不能理解的话就只能去研究一下tcp/ip、http协议和socket了。