C# 忽略冲突属性:使用DataTable.Merge()时数据类型属性不匹配

C# 忽略冲突属性:使用DataTable.Merge()时数据类型属性不匹配,c#,arrays,datatable,C#,Arrays,Datatable,合并不同的表时,是否有方法忽略数据类型属性 原因:从下面的method(),所有dtArray都来自其他方法(将不同的Excel数据转换为DataTable)。在清理了足够多的Excel数据后,dtArray中的一些Datacolumn似乎仍然存在格式问题(如图所示): *。%值和%Value具有冲突的属性:数据类型属性不匹配* 经过调试,我意识到了这一点 对于i=0,由于dtAll已初始化,因此所有操作都正常工作 public DataTable MergeAllDataTable(DataT

合并不同的表时,是否有方法忽略数据类型属性

原因:从下面的
method()
,所有
dtArray
都来自其他方法(将不同的
Excel
数据转换为
DataTable
)。在清理了足够多的
Excel
数据后,
dtArray
中的一些
Datacolumn
似乎仍然存在格式问题(如图所示):

*。%值和%Value具有冲突的属性:数据类型属性不匹配*

经过调试,我意识到了这一点

对于
i=0
,由于
dtAll
已初始化,因此所有操作都正常工作

public DataTable MergeAllDataTable(DataTable[] dtArray)
{
    DataTable dtAll = new DataTable();

    for (int i = 0; i < dtArray.Length; i++)
    {
        DataTable dtget = dtArray[i];
        dtAll.Merge(dtget, true);                   
     }
     return dtAll;
}
公共数据表MergeAllDataTable(DataTable[]dtArray) { DataTable dtAll=新的DataTable(); for(int i=0;i Aim:我没有按照
Column
查找
Column
并修复任何格式问题,而是想知道是否存在诸如ignore
DataType property
之类的
选项,因为到目前为止我还不知道

更新:最后,我要寻找的选项是
合并(tbl,true,MissingSchemaAction.Ignore)
。仍然引起混淆的是,在上述
MergeAllDataTable()
中包含了此
选项。
事实上,我使用了
dtAll.Merge(dtget,true,MissingSchemaAction.Ignore)在仍然触发错误的相关范围内

因此,作为一种方式,我承认这不是真正有效的,我宣布
Table1.Merge(Table2,true,MissingSchemaAction.Ignore)
Table3.Merge(Table4,true,MissingSchemaAction.Ignore)
等,对
属性不匹配进行排序。不过,如果能看到一种更好的方法来通过
循环处理它,这可能会很有趣,正如最初在
MergeAllDataTable()


最佳

那么您当前的代码会发生什么情况?如果您将其扩展为一个。谢谢您的反馈,但是我想知道是否有人在合并数据表时注意到了诸如
忽略数据类型属性
之类的选项。为了有“选项”,必须有一个特定的问题。您现在已经对问题进行了一些改进,但a将使问题变得更好。你的问题越好,你就越有可能得到有用的答案。。。你的问题对未来的读者越有用。请努力使这个问题成为一个好问题