我有一个xml文件我想从文件中删除一些标签。我的xml数据是
<GetCategoriesResponse xmlns="urn:ebay:apis:eBLBaseComponents">
<Timestamp>2017-06-08T05:34:32.960Z</Timestamp>
<Ack>Success</Ack>
<Version>989</Version>
<Build>E989_CORE_API_18131074_R1</Build>
<CategoryArray>
<Category>
<BestOfferEnabled>true</BestOfferEnabled>
<AutoPayEnabled>true</AutoPayEnabled>
<CategoryID>20081</CategoryID>
<CategoryLevel>1</CategoryLevel>
<CategoryName>Antiques</CategoryName>
<CategoryParentID>20081</CategoryParentID>
</Category>
</CategoryArray>
</GetCategoriesResponse>
我需要从文件中删除。所以我的结果应该是这样的
<Timestamp>2017-06-08T05:34:32.960Z</Timestamp>
<Ack>Success</Ack>
<Version>989</Version>
<Build>E989_CORE_API_18131074_R1</Build>
<CategoryArray>
<Category>
<BestOfferEnabled>true</BestOfferEnabled>
<AutoPayEnabled>true</AutoPayEnabled>
<CategoryID>20081</CategoryID>
<CategoryLevel>1</CategoryLevel>
<CategoryName>Antiques</CategoryName>
<CategoryParentID>20081</CategoryParentID>
</Category>
</CategoryArray>
我试过这个它正在发挥作用。但它在categoryarray中的命名空间
<CategoryArray xmlns="urn:ebay:apis:eBLBaseComponents">
<Category>
<BestOfferEnabled>true</BestOfferEnabled>
<AutoPayEnabled>true</AutoPayEnabled>
<CategoryID>20081</CategoryID>
<CategoryLevel>1</CategoryLevel>
<CategoryName>Antiques</CategoryName>
<CategoryParentID>20081</CategoryParentID>
</Category>
</CategoryArray>
XmlDocument xmldoc = new XmlDocument();
xmldoc.LoadXml(xmlFile);
XmlNamespaceManager nsm = new XmlNamespaceManager(xmldoc.NameTable);
nsm.AddNamespace("i", "urn:ebay:apis:eBLBaseComponents");
XmlNodeList node = xmldoc.SelectNodes("/i:GetCategoriesResponse/i:CategoryArray", nsm);
XmlDocument xdoc1 = new XmlDocument();
foreach (XmlNode xNodeI in node)
{
XmlNode newNode = xdoc1.ImportNode(xNodeI, true);
xdoc1.AppendChild(newNode);
}
xmldoc = xdoc1;
xmldoc.Save(path + @"\EbayCategories.xml");