Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.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# ReadXml(xmlPath)将xml属性读入新表_C#_.net_Xml_Dataset - Fatal编程技术网

C# ReadXml(xmlPath)将xml属性读入新表

C# ReadXml(xmlPath)将xml属性读入新表,c#,.net,xml,dataset,C#,.net,Xml,Dataset,假设我有以下xml: <books> <book> <name>book 1</name> <author>aut 1</author> <length unit="cm">297</length> </book> </books> 它将返回一个包含两个表的数据集:books和length。表“books”将包含

假设我有以下xml:

<books>
    <book>
        <name>book 1</name>
        <author>aut 1</author>
        <length unit="cm">297</length>
    </book>
</books>
它将返回一个包含两个表的数据集:books和length。表“books”将包含两列:“name”和“author”。另一个表“长度”将包含所有长度

我只想要一个表,所有3列的“书”。属性“unit”应该被忽略。。。你是怎么做到的

编辑:对不起,我只是删除了xml文件中的文本,就解决了这个问题:

        mainXML = mainXML.Replace(" unit=\"K\"", "");

在设计器中创建一个类型化的
数据集
,其中包含相关的表和字段。然后对该
数据集的实例调用
ReadXml
。这应该可以工作,而且在访问数据时也会更舒适。

我刚刚读取了xml文件,删除了属性,然后再次保存。不漂亮,但它很管用

mainXML = mainXML.Replace(" unit=\"K\"", ""); 

哇,真不敢相信,也许你忘了包含XML/代码的某些部分?数据集是否预配置了两个表(和一个关系)?这是读取数据集的代码:Dataset dsMain=new Dataset();ReadXml(xmlPath);返回dsMain;这可能有用,但我不能这么做,因为这是一个动态表。。。我无法指定表的不同字段。。谢谢
mainXML = mainXML.Replace(" unit=\"K\"", "");