各位大神,遇到一个“ NullReferenceException: 未将对象引用设置到对象的实例” 特来求救
CommonClass ccObj = new CommonClass();UserClass ucObj = new UserClass();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//通过用户名,获取用户信息
if (Session["UserName"] == null)
{
Response.Redirect("Default.aspx");
}
else
{
DataTable dsTable = new DataTable();
dsTable = ucObj.GetUserInfo((Session["Username"]).ToString());
this.txtStu_Name.Text = dsTable.Rows[0][0].ToString();//学生名
this.txtStu_Pwd.Text = dsTable.Rows[0][1].ToString();//用户密码
this.txtStu_Id.Text = dsTable.Rows[0][2].ToString();//学号
this.txtDorm_Id.Text = dsTable.Rows[0][3].ToString();//宿舍号
this.txtFlat_Id.Text = dsTable.Rows[0][4].ToString();//楼栋号
}
}
}
运行后显示如下:
“/”应用程序中的服务器错误。
--------------------------------------------------------------------------------
未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。
源错误:
行 32: DataTable dsTable = new DataTable();
行 33: dsTable = ucObj.GetUserInfo((Session["Username"]).ToString());
行 34: this.txtStu_Name.Text = dsTable.Rows[0][0].ToString();//学生名
行 35: this.txtStu_Pwd.Text = dsTable.Rows[0][1].ToString();//用户密码
行 36: this.txtStu_Id.Text = dsTable.Rows[0][2].ToString();//学号
源文件: D:\Documents\Visual Studio 2008\Projects\水厂库存管理系统web应用\水厂库存管理系统web应用\UserModify.ascx.cs 行: 34
堆栈跟踪:
[NullReferenceException: 未将对象引用设置到对象的实例。]
水厂库存管理系统web应用.UserModify.Page_Load(Object sender, EventArgs e) in D:\Documents\Visual Studio 2008\Projects\水厂库存管理系统web应用\水厂库存管理系统web应用\UserModify.ascx.cs:34
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35
System.Web.UI.Control.OnLoad(EventArgs e) +99
System.Web.UI.Control.LoadRecursive() +50
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Control.LoadRecursive() +141
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627
--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.5456; ASP.NET 版本:2.0.50727.5456 --------------------编程问答-------------------- 你应该断点看一下dsTable是否为null --------------------编程问答--------------------
未将对象引用设置到对象的实例 多少人犯这个错误 肯定是没取到值呗
要记得获取对象前先判断非空
if(dsTable!=null)
补充:.NET技术 , ASP.NET