gpt4 book ai didi

c# - 通过 C# 将 LINQ to XML

转载 作者:数据小太阳 更新时间:2023-10-29 01:58:17 26 4
gpt4 key购买 nike

我是 LINQ 的新手。我明白它的目的。但我不太明白。我有一个如下所示的 XML 集:

<Results>
<Result>
<ID>1</ID>
<Name>John Smith</Name>
<EmailAddress>john@example.com</EmailAddress>
</Result>
<Result>
<ID>2</ID>
<Name>Bill Young</Name>
<EmailAddress>bill@example.com</EmailAddress>
</Result>
</Results>

我已将此 XML 加载到 XDocument 中:

string xmlText = GetXML();
XDocument xml = XDocument.Parse(xmlText);

现在,我正在尝试将结果转换为 POCO 格式。为了做到这一点,我目前正在使用:

var objects = from results in xml.Descendants("Results")
select new Results
// I'm stuck

如何通过 LINQ 获取结果元素的集合?我对此时在我的代码中导航 XML 结构感到特别困惑。

谢谢!

最佳答案

这将返回 IEnumerable匿名类:

var q = from result in xml.Descendants
select new
{
ID = result.Descendants("ID"),
Name= result.Descendants("Name"),
EmailAddress= result.Descendants("EmailAddress")
};

或者如果您已经定义了 `Result 类,例如:

class Result
{
public ID { get; set; }
public Name { get; set; }
public EmailAddress { get; set; }
}

然后:

var q = from result in xml.Descendants
select new Result
{
ID = result.Descendants("ID"),
Name = result.Descendants("Name"),
EmailAddress = result.Descendants("EmailAddress")
};

(返回 IEnumerable<Result>)

关于c# - 通过 C# 将 LINQ to XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4538645/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com