Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#-将数据集保存为XML_C#_Xml - Fatal编程技术网

C#-将数据集保存为XML

C#-将数据集保存为XML,c#,xml,C#,Xml,Iam使用数据集的WriteXml()将数据集中的数据保存为XML。当我将数据集值保存到XML文件中时,该文件的格式如下所示 我这样保存数据集:Order\u dataset.WriteXml(@“C:\Orders”,XmlWriteMode.IgnoreSchema) 我如何写才能使XMLNS地址不显示在我的XML文件中??XmlWriteMode.IgnoreSchema应该完成这项工作,但它不会 coffe 1. 2011-02-20T14:11:21+01:00 在保存数据集之前,您

Iam使用数据集的WriteXml()将数据集中的数据保存为XML。当我将数据集值保存到XML文件中时,该文件的格式如下所示

我这样保存数据集:
Order\u dataset.WriteXml(@“C:\Orders”,XmlWriteMode.IgnoreSchema)

我如何写才能使XMLNS地址不显示在我的XML文件中??XmlWriteMode.IgnoreSchema应该完成这项工作,但它不会


coffe
1.
2011-02-20T14:11:21+01:00

在保存数据集之前,您是否尝试过更改其名称空间

DataSet ds = new DataSet("MyDataSet");
ds.Namespace = "";
ds.WriteXml(...);

DataSet具有内部变量fTopLevelTable,只有在加载XML文件时才会更改该变量。在将手动更改的XML加载到。。。如果您通过代码或使用ReadXmlSchema()创建数据集,就可以实现这一点


非常感谢,现在好多了。我想知道是否也可以替换数据集名称,我的意思是不显示编写其他内容?好的,我会再次尝试:但XML只是数据集、表和列名称的转储。最好是以更面向业务的方式构造数据集,然后导出XML并使用XSLT重命名元素?好的,我完全按照原样保存数据集。如何构造数据集?我打算稍后使用XSLT转换XML。不幸的是,您不能更改数据集XML的格式。此外,您不能忽略普通数据集中的模式,因为它是数据集工作方式的固有特性。在强类型数据集上,允许您忽略模式,因为它们通常存储在附带的.xsd中。
FieldInfo fieldInfo = typeof(DataSet).GetField("fTopLevelTable", BindingFlags.NonPublic | BindingFlags.Instance);
fieldInfo.SetValue(yourDS, true);