我有以下 XML 文档结构。
<FareSearchResponse>
<AirlineList>
<AQR>...</AQR>
<ABA>...</ABA>
<AAI>...</AAI>
<A9W>...</A9W>
<AVS>...</AVS>
<AAF>...</AAF>
<AEY>...</AEY>
<ALH>...</ALH>
<AQF>...</AQF>
</AirlineList>
</FareSearchResponse>
我想将 AirlineList 的所有子元素重命名为 Airline。 child 的名字标签各不相同,可以是任何名字。因此无法知道会出现哪些名称标签以及它们是什么。它是来自 Web 服务的动态 XML 文档。到目前为止,我已成功将 XML 字符串加载到 XmlDocument 中;
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(System.Web.HttpUtility.HtmlDecode(resultString));
XElement firstChild = xmlDoc.ToXDocument().Root.Elements().First();
我想选择所有 AirlineList 元素并将它们重命名为 Airline。
我添加了更多详细信息。 XML 文档现在包含在firstChild 中。如何替换第一个Child 中的元素而不是直接从 XmlDocument 替换元素
谢谢。
最佳答案
I want to select all AirlineList elements and rename them to Airline.
使用 Linq
到 Xml
并更新子元素的Name
。
var doc = XDocument.Load(filepath);
foreach (var element in doc.Descendants("AirlineList").Elements())
{
element.Name ="Airline";
}
检查这个example
关于c# - XML 将所有子元素重命名为相同的标签名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36265219/