2016-04-21 138 views
0

我试图将强类型的DataTable发送给WCF服务,该服务期望具有相同数据的无类型DataTable。如何将强类型的DataTable转换为无类型的DataTable

但是,我得到一个错误,因为序列化程序不知道如何处理额外的属性。

如何将我的强类型DataTable转换为它的无类型对等?

回答

1

说明:有关强类型与非类型数据集的基本说明,请看here

这可以用一个简单的合并命令来完成,像这样:

// convert stringly typed DataTable "data" to a loosely-typed version of itself 
var data_untyped = new DataTable(data.TableName, data.Namespace); 
data_untyped.Merge(data); 

第一(非注释)行创建了新的DataTable,复制表名和命名空间。

最后一行复制数据,包括列定义。