未将对象引用设置到对象的实例 怎么回事

来源:百度知道 编辑:UC知道 时间:2024/06/05 16:08:43
未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。

源错误:

行 72: finally
行 73: {
行 74: mCon.Close();
行 75: }
行 76:

源文件: e:\人事处new\人事处\App_Code\DbOperate.cs 行: 74

堆栈跟踪:

[NullReferenceException: 未将对象引用设置到对象的实例。]
DbOperate.QueryTable(String sqlStr) in e:\人事处new\人事处\App_Code\DbOperate.cs:74
SchoolNotify.Page_Load(Object sender, EventArgs e) in e:\人事处new\人事处\SchoolNotify.ascx.cs:25
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +13
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +45
System.Web.UI.Control.OnLoad(EventArgs e) +80
System.Web.UI.Control.LoadRecursive() +49
System.Web.UI.Control.LoadRe

这个问题是很常见的问题,推测你的mCon是数据库连接,你的代码可能如下:
IDBConnection mCon = null ;
try
{
mCon = ...// 创建连接
// 进行其他操作。。。
}
finally
{
mCon.Close();
}
你的设想是在任何时候都关掉mCon,但你没有考虑到mCon创建失败的情况,或者根本没来得及创建的情况。
因此,要改成:
finally
{
if (mCon != null) mCon.Close();
}

也就是说
你引用的对象没有用new Class()申明对象,或是对象不存在
请把具体那真的代码放出来