DataRow dr 实例化问题?
求救个问题:
{ DataRow dr ;
int vSNo = Int32.Parse(txtSNo.Text.Trim());
dr = dataSet11.Tables[ "Student "].Rows.Find(vSNo);
dr.Delete();
try
{
oleDbDataAdapter1.Update(dataSet11, "Student ");
}
catch(Exception ex)
{MessageBox.Show(ex.Message);}
}
//在dr.Delete()处报错,(没有实例化)
提示异常:
未将对象引用设置到对象的实例。
请问程序那里有问题??
------解决方案--------------------dr = dataSet11.Tables[ "Student "].Rows.Find(vSNo);返回的 dr 一定是空引用了!
你使用了:
DataRow dr=mydt.NewRow();
那么你将这个dr 添加到表中了没有?
dataSet11.Tables[ "Student "].Rows.Add(dr);
------解决方案--------------------{ DataRow dr ;
int vSNo = Int32.Parse(txtSNo.Text.Trim());
dr = dataSet11.Tables[ "Student "].Rows.Find(vSNo);
if (dr == null) return;//没找到指定的行,返回
dr.Delete();
try
{
oleDbDataAdapter1.Update(dataSet11, "Student ");
}
catch(Exception ex)
{MessageBox.Show(ex.Message);}
}
------解决方案--------------------Rows.Find查找符合条件的记录,没有找到的话,返回空引用
直接使用当然报错了,用前判断一下是否为空咯