首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我有一个具有多个siteserver元素的xml,我希望将所有siteserver元素分组到Siteservers父节点

我有一个具有多个siteserver元素的xml,我希望将所有siteserver元素分组到Siteservers父节点
EN

Stack Overflow用户
提问于 2018-09-17 19:02:07
回答 2查看 22关注 0票数 0

目前,XML是这样生成的:

代码语言:javascript
复制
<Sites>
    <SiteServer>
      <ID>4</ID>
      <SiteID>4</SiteID>
      <ServerName>New server</ServerName>
      <IPAddress>1022216522</IPAddress>
      <PDPServer>true</PDPServer>
      <bFTPS>false</bFTPS>
    </SiteServer>
    <SiteServer>
      <ID>4</ID>
      <SiteID>4</SiteID>
      <ServerName>New server</ServerName>
      <IPAddress>1022216522</IPAddress>
      <PDPServer>true</PDPServer>
      <bFTPS>false</bFTPS>
    </SiteServer>
</Sites>

我需要在siteserver名称siteservers之前添加一个父节点。将所有站点服务器分组到站点服务器。

代码语言:javascript
复制
<Sites>
    <SiteServers>
    <SiteServer>
      <ID>4</ID>
      <SiteID>4</SiteID>
      <ServerName>New server</ServerName>
      <IPAddress>1022216522</IPAddress>
      <PDPServer>true</PDPServer>
      <bFTPS>false</bFTPS>
    </SiteServer>
    <SiteServer>
      <ID>4</ID>
      <SiteID>4</SiteID>
      <ServerName>New server</ServerName>
      <IPAddress>1022216522</IPAddress>
      <PDPServer>true</PDPServer>
      <bFTPS>false</bFTPS>
    </SiteServer>
    </SiteServers>
</Sites>

我尝试添加子节点和分组依据,但不起作用。

代码语言:javascript
复制
var xml = XDocument.Load(@"C:\Users\rbarnwal\source\repos\testXML\testXML\ExportXml2.xml");
var result = new XElement(xml.Root.Name, xml.Root.Elements().GroupBy(x => x.Name).Select(x =>
    new XElement("Parent", new XAttribute("name", x.Key))));

var result2 = new XElement(xml.Root.Name, xml.Root.Attributes().ToArray(),
    xml.Root.Elements().GroupBy(x => x.Element("SiteServer").Value.Trim()).Select(x =>
        new XElement("SiteServers"))
);
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52366265

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档