2010-05-21 50 views
0

我已经在内存数据集中添加了代码中填充的几个表。 gui上的数据绑定网格显示表格内容没有问题。数据集XML导出为空

然后我尝试将数据集导出到XML:

ds.WriteXml(fdSave.FileName, XmlWriteMode.WriteSchema); 

,并得到空XML(有几个关于数据集的名字线,但没有任何表)

如果我出口表直接我已经得到所有数据但数据集名称显然是错误的:

ds.Fields.WriteXml(fdSave.FileName, XmlWriteMode.WriteSchema); 

我在想什么?有没有合理的方法将整个数据集写入文件?

回答

0

看一看上DataSet.WriteXml的文档:

http://msdn.microsoft.com/en-us/library/ms135425.aspx

和XmlWriteMode:

http://msdn.microsoft.com/en-us/library/system.data.xmlwritemode.aspx

尝试使用XmlWriteMode.IgnoreSchema。该文档对XmlWriteMode.WriteSchema说:“如果DataSet没有当前模式,则不会写入任何内容。”

+0

不,IgnoreShema不利于 为什么不会有任何架构,如果有表在数据集定义,并通过自己得救? – Shaine 2010-05-21 06:40:33

+0

您是否尝试过没有XmlWriteMode选项的WriteXml,并且只是文件流或文件名? http://msdn.microsoft.com/en-us/library/hb27k0tf(v=VS.100).aspx – 2010-05-21 06:53:28

1

好吧,傻我。在填充数据集之前清除数据集表...

0

您必须将数据表添加到您的数据集中,例如: ds.Tables.Add(datatable1);

然后写它导出到架构