我尝试将强类型DataTable发送到WCF服务,该服务期望具有相同数据的无类型DataTable。
但是,我收到错误,因为序列化程序不知道如何处理额外的属性。
如何将强类型DataTable转换为无类型的等效文件?
答案 0 :(得分:3)
注意:有关强类型与非类型化数据集的基本说明,请查看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,复制TableName和Namespace。
最后一行复制数据,包括列定义。