全站数据
8 4 2 0 5 8 1

NullReferenceException是什么,我怎么解决它

经济视野 | 简单学习,快乐成才!         
问题更新日期:2024-04-24 12:17:04

问题描述

NullReferenceException是什么,我怎么解决它求高手给解答
精选答案
最佳答案

“System.NullReferenceException: 未将对象引用设置到对象的实例”问题可能原因如下:

1、ViewState 对象为Null。

2、DateSet 空。

3、sql语句或Datebase的原因导致DataReader空。

4、声明字符串变量时未赋空值就应用变量。

5、未用new初始化对象。

6、Session对象为空。

7、对控件赋文本值时,值不存在。

8、使用Request.QueryString()时,所获取的对象不存在,或在值为空时未赋初始值。

9、使用FindControl时,控件不存在却没有做预处理。

10、重复定义造成未将对象引用设置到对象的实例错误.我的错误是第六种,Session对象为空.错误原因:在调用 Session["userid"].ToString() 前应先检查 Session["userid"] 对象是否为 null在未登录的情况下, Session["userid"] 的值是null,直接用ToString()方法肯定会出错的...我原来的代码:protected void Page_Load(object sender, EventArgs e){strIP = Request.UserHostAddress.ToString();strUserID = Session["userid"].ToString();strMessage = this.tbMessage.Text;strPostID = Request["postid"].ToString();strReplyTime = DateTime.Now.ToString();}改正后的代码:protected void Page_Load(object sender, EventArgs e){if (Session["userid"] != null && Session["postid"] != null){strIP = Request.UserHostAddress.ToString();strUserID = Session["userid"].ToString();strMessage = this.tbMessage.Text;strPostID = Request["postid"].ToString();strReplyTime = DateTime.Now.ToString();}}