积极答复者
求 Column 'ColumnName' does not belong to table Table 错误原因,解决方法

问题
-
从数据库中返回的数据存在 DataSet 中,再从 DataSet 中取出 DataTable ,最后循环 DataRow 取出相关数据信息。可是,在捕获错误日志中得到这样的错误信息。
System.Web.HttpUnhandledException: Exception of type
'System.Web.HttpUnhandledException' was thrown. ---> System.ArgumentException: Column 'M_Bgroud' does not belong to table Table.
at System.Data.DataRow.GetDataColumn(String columnName)
at System.Data.DataRow.get_Item(String columnName)
可是数据库字段 M_Bgroud 确实存在,而且存储过程返回的数据正常。这个问题不是总发生,偶尔出现,不知道是什么原因。愿广大高手帮忙解决一下。
万分感谢!- 已更改类型 Riquel_DongModerator 2009年6月22日 7:18 OP didn't follow up
- 已更改类型 Riquel_DongModerator 2009年8月13日 6:47
- 已更改类型 Riquel_DongModerator 2009年8月13日 6:47
- 已更改类型 邹俊才Moderator 2009年8月30日 3:44
- 已更改类型 Riquel_DongModerator 2009年10月20日 4:14
答案
-
这种错误一般就是直接将一个Datatable的列赋值给另外一个DataTable的列
解决办法是经DataTable的列的值赋值给另外的那个DataTable对应列的值,而不是直接用DataColumn=DataColumn的形式
Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!http://blog.tanging.net- 已建议为答案 Riquel_DongModerator 2009年10月21日 3:15
- 已标记为答案 韦恩卑鄙 waywaModerator 2011年3月10日 13:04
全部回复
-
你好,
当你写入上面的错误信息到日志时,添加代码去检查DataTable的column去看是否存在这一列。
Please remember to mark the replies as answers if they help and unmark them if they provide no help.
Welcome to the All-In-One Code Framework! If you have any feedback, please tell us. -
你好,
因为你没有提供必要的信息跟贴,我们把问题的类型改为讨论.如果你有时间关注这个问题和提供必要的信息,请把类型改回为问题,通过帖子顶部的”Change Type”选项。如果问题已经解决,我们希望你能够共享解决方案以便这个答案能够被其他有同样问题的论坛成员看到,谢谢你
Please remember to mark the replies as answers if they help and unmark them if they provide no help.
Welcome to the All-In-One Code Framework! If you have any feedback, please tell us. -
这种错误一般就是直接将一个Datatable的列赋值给另外一个DataTable的列
解决办法是经DataTable的列的值赋值给另外的那个DataTable对应列的值,而不是直接用DataColumn=DataColumn的形式
Wenn ich dich hab’,gibt es nichts, was unerträglich ist.坚持不懈!http://blog.tanging.net- 已建议为答案 Riquel_DongModerator 2009年10月21日 3:15
- 已标记为答案 韦恩卑鄙 waywaModerator 2011年3月10日 13:04