最新消息:关注【太平洋学习网】微信公众号,可以获取全套资料,【全套Java基础27天】【JavaEE就业视频4个月】【Android就业视频4个月】

解决An unhandled exception of type 'System.ArgumentException' occurred in System.Data.dll异常

扩展 太平洋学习网 浏览 评论

C#出现“System.ArgumentException”异常很明显就是参数异常的意思,关键字眼是“Additional information: 列“OLDOUTNO”不属于表 ”具体异常如下:

An unhandled exception of type 'System.ArgumentException' occurred in System.Data.dll

Additional information: 列“OLDOUTNO”不属于表 。

如图所示,你会发现你跟一个DataRow字段赋值的时候,就会出现这样的异常了:

20180507180106.jpg

这种类型的异常主要是因为DataRow行数据里面并没有“OLDOUTNO”这个字段,其实也就是我们GridView列表的DataTable数据源对象里面没有“OLDOUTNO”表头(column),于是我们需要给它添加一个Column字段进去。

解决方案:

1::给Gridview的dataSource,也就是datatable对象添加column字段的方法大概如下,本案例中的dtMain就是datatable对象

if (!dtMain.Columns.Contains("OLDOUTNO"))
{
	dtMain.Columns.Add("OLDOUTNO", typeof(string));
}

这样再“masterRow["OLDOUTNO"] = tempOutno;”这样赋值就不会出现“Additional information: 列“OLDOUTNO”不属于表 ”的错误了。

2:如果你添加完之后想将“OLDOUTNO”这个字段去掉,可以使用如下方法:

if (dtMain.Columns.Contains("OLDOUTNO"))
{
	dtMain.Columns.Remove("OLDOUTNO");
}

完美解决!如果觉得有帮助,可以点击下方的分享按钮!

分享到:
来源网站:太平洋学习网,转载请注明出处:http://www.tpyyes.com/a/kuozhan/2018/0507/597.html

    与本文相关的文章

    发表我的评论
    取消评论

    表情

    您的回复是我们的动力!

    • 昵称 (必填)

    网友最新评论