如何使用C#从xml中删除每个元素中的架构引用

时间:2019-04-09 09:03:51

标签: c# linq-to-xml xmldocument

我有以下格式的xml,它具有每个节点的xml名称空间引用。

<Root xmlns:sch1="URL1" xmlns:sch2="URL2">
    <sch1:ProductDetails>
        <sch1:Product>
            <sch1:ProductId>1</sch1:ProductId>
            <sch1:ProductName>ProductOne</sch1:ProductName>
        </sch1:Product>
        <sch1:Product>
            <sch1:ProductId>2</sch1:ProductId>
            <sch1:ProductName>ProductTwo</sch1:ProductName>
        </sch1:Product>
    </sch1:ProductDetails>
    <sch2:EmployeeDetails>
        <sch2:Employee>
            <sch2:EmployeeId>1</sch2:EmployeeId>
            <sch2:EmployeeName>NameOne</sch2:EmployeeName>
        </sch2:Employee>
        <sch2:Employee>
            <sch2:EmployeeId>2</sch2:EmployeeId>
            <sch2:EmployeeName>NameTwo</sch2:EmployeeName>
        </sch2:Employee>
    </sch2:EmployeeDetails>
</Root>

和我预期的输出xml应该是

<Root>
    <ProductDetails>
        <Product>
            <ProductId>1</ProductId>
            <ProductName>ProductOne</ProductName>
        </Product>
        <Product>
            <ProductId>2</ProductId>
            <ProductName>ProductTwo</ProductName>
        </Product>
    </ProductDetails>
    <EmployeeDetails>
        <Employee>
            <EmployeeId>1</EmployeeId>
            <EmployeeName>NameOne</EmployeeName>
        </Employee>
        <Employee>
            <EmployeeId>2</EmployeeId>
            <EmployeeName>NameTwo</EmployeeName>
        </Employee>
    </EmployeeDetails>
</Root>

如何使用XmlDocument或XDocument在C#中获得此输出。请提出建议。

0 个答案:

没有答案