Я хотел удалить дубликаты записей в моем xml, но до сих пор не могу понять, как я могу это сделать, вот xml, и вы можете увидеть, что есть 4 дубликата записей. Я хочу, чтобы удалить itemGrp узел из-за наличия такой же rateClass элемент в другой itemGrp узелУдалить повторяющиеся записи XML
<?xml version="1.0" encoding="utf-8" ?>
<Fare_1 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Fare_1_Details xmlns="http://xml.someplace">
<itemGrp>
<itemNb>
<itemNumberDetails>
<number>01</number>
</itemNumberDetails>
</itemNb>
<fareQualifItem>
<additionalFareDetails>
<rateClass>DT21P</rateClass>
</additionalFareDetails>
<discountDetails>
<fareQualifier>725</fareQualifier>
</discountDetails>
</fareQualifItem>
</itemGrp>
<itemGrp>
<itemNb>
<itemNumberDetails>
<number>02</number>
</itemNumberDetails>
</itemNb>
<fareQualifItem>
<additionalFareDetails>
<rateClass>DT21P</rateClass>
</additionalFareDetails>
<discountDetails>
<fareQualifier>725</fareQualifier>
</discountDetails>
</fareQualifItem>
</itemGrp>
<itemGrp>
<itemNb>
<itemNumberDetails>
<number>03</number>
</itemNumberDetails>
</itemNb>
<fareQualifItem>
<additionalFareDetails>
<rateClass>CV76J</rateClass>
</additionalFareDetails>
<discountDetails>
<fareQualifier>352</fareQualifier>
</discountDetails>
</fareQualifItem>
</itemGrp>
</Fare_1_Details>
<Fare_1_Details xmlns="http://xml.someplace">
<itemGrp>
<itemNb>
<itemNumberDetails>
<number>01</number>
</itemNumberDetails>
</itemNb>
<fareQualifItem>
<additionalFareDetails>
<rateClass>TH31L</rateClass>
</additionalFareDetails>
<discountDetails>
<fareQualifier>722</fareQualifier>
</discountDetails>
</fareQualifItem>
</itemGrp>
<itemGrp>
<itemNb>
<itemNumberDetails>
<number>02</number>
</itemNumberDetails>
</itemNb>
<fareQualifItem>
<additionalFareDetails>
<rateClass>GK51T</rateClass>
</additionalFareDetails>
<discountDetails>
<fareQualifier>726</fareQualifier>
</discountDetails>
</fareQualifItem>
</itemGrp>
<itemGrp>
<itemNb>
<itemNumberDetails>
<number>03</number>
</itemNumberDetails>
</itemNb>
<fareQualifItem>
<additionalFareDetails>
<rateClass>GK51T</rateClass>
</additionalFareDetails>
<discountDetails>
<fareQualifier>726</fareQualifier>
</discountDetails>
</fareQualifItem>
</itemGrp>
</Fare_1_Details>
</Fare_1>
То, что я пытался до сих пор с XmlDocument:
NameTable nt = new NameTable();
XmlNamespaceManager m = new XmlNamespaceManager(nt);
m.AddNamespace("xsi", "http://www.w3.org/2001/XMLSchema-instance");
m.AddNamespace("a", "http://xml.someplace");
XmlNodeList nodes = xmlTree.SelectNodes("//Fare_1/Fare_1_Details/itemGrp", m);
XmlNode actionNode = xmlTree.SelectSingleNode("//Fare_1");
for (int i = 1; i < nodes.Count; i++)
{
actionNode.RemoveChild(nodes[i]);
}
Говоря о дубликатах, вы конкретно ссылаетесь на узлы itemGrp или удаляете все дубликаты? – Oluwafemi
itemGrp node Я хочу удалить весь узел и любой элемент, который он имеет из-за того же элемента rateclass – Developer
Как вы анализируете XML? где код? – HappyLee