Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何获取列表<;类型>;对象,从这个XML?_C#_Xml_Linq_Linq To Xml - Fatal编程技术网

C# 如何获取列表<;类型>;对象,从这个XML?

C# 如何获取列表<;类型>;对象,从这个XML?,c#,xml,linq,linq-to-xml,C#,Xml,Linq,Linq To Xml,我不能理解这个代码 XDocument loaded = XDocument.Load(PATH); var devices = new List<Device>(loaded.Descendants("Device").Select(e => new Device { UserName = "xxx", Domain = e.Element("domain").Value,

我不能理解这个代码

        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,

        }));
XDocument-Load=XDocument.Load(路径);
var设备=新列表(已加载的子体(“设备”)。选择(e=>新设备
{
UserName=“xxx”,
域=e.元素(“域”).值,
FQDN=e.Element(“FQDN”).值,
密码=e.元素(“密码”).值,
}));

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

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

像这样填充字段:

<Devices>
  <Device>
    <domain>domainValue</domain>
    <fqdn>fqdnValue</fqdn>
    <password>passwordValue</password>
  </Device>
</Devices>
  • UserName=“xxx”用户名属性始终具有相同的值xxx
  • Domain=xml中Domain元素的值
  • FQDN=XML中FQDN元素的值
  • Password=xml中Password元素的值
您的XML如下所示:

<Devices>
  <Device>
    <domain>domainValue</domain>
    <fqdn>fqdnValue</fqdn>
    <password>passwordValue</password>
  </Device>
</Devices>

域值
fqdnValue
密码值
XDocument Load=XDocument.Load(路径);
//设备=设备列表
var设备=新列表
//在xml文件中查找每个设备
(已加载。子体(“设备”)
//创建新设备对象
.选择(e=>新设备
{
//并用找到的元素值填充它
UserName=“xxx”,
域=e.元素(“域”).值,
FQDN=e.Element(“FQDN”).值,
密码=e.元素(“密码”).值,
}));