0

我无法理解这段代码。

        XDocument loaded = XDocument.Load(PATH);
        var devices = new List<Device>(loaded.Descendants("Device").Select(e => new Device
        {
            UserName = "xxx",
            Domain = e.Element("domain").Value,
            FQDN = e.Element("fqdn").Value,
            Password = e.Element("password").Value,

        }));

它如何添加这些元素,并获取设备列表?

4

2 回答 2

1

此代码使用 LINQ 读取 XML 并使用 XML 的信息创建设备对象列表。

像这样填写字段:

  • UserName = "xxx" 始终 UserName 属性具有相同的值 xxx
  • 域 = xml 中域元素的值
  • FQDN = XML 中 fqdn 元素的值
  • 密码 = xml 中密码元素的值

你的 XML 是这样的:

<Devices>
  <Device>
    <domain>domainValue</domain>
    <fqdn>fqdnValue</fqdn>
    <password>passwordValue</password>
  </Device>
</Devices>
于 2012-12-23T06:31:14.173 回答
0
    XDocument loaded = XDocument.Load(PATH);
      // devices = List of device
    var devices = new List<Device>
      //look up for every Device in xml file
    (loaded.Descendants("Device")
      //create new Device object
    .Select(e => new Device
    {
          //and fill it with found element's values
        UserName = "xxx",
        Domain = e.Element("domain").Value,
        FQDN = e.Element("fqdn").Value,
        Password = e.Element("password").Value,

    }));
于 2012-12-23T06:33:37.970 回答