我前段时间在一些博客中读到(抱歉含糊不清)我可以使用如下所示的 linq
var list = from c in xml
select new
{
foreach(XElement el in c.Elements())
{
}
}
有谁知道这是可能的还是只是我的想象?
谢谢。
我前段时间在一些博客中读到(抱歉含糊不清)我可以使用如下所示的 linq
var list = from c in xml
select new
{
foreach(XElement el in c.Elements())
{
}
}
有谁知道这是可能的还是只是我的想象?
谢谢。
您不能foreach
直接在匿名类型初始化表达式中使用循环,不。
如果您能告诉我们您想要实现的目标,我们可能会帮助您找到实现目标的最佳方式。
您可以使用 ToList() 函数将元素转换为 List 列表,然后您可以在其上使用 ForEach 方法。仅供参考,当使用 LinqToXml 时,我发现 Descendants() 更有用,因为它将全面深入到对象模型中。
xml.Elements().ToList().ForEach(ele => DoSomething(ele));
这是你的想象。您可以在 foreach 循环中使用 linq 查询的结果,但不能在匿名类型的声明中使用类似的 foreach 循环。
好的,我有一个包含两部分的 xml,首先声明 xml 中的字段,第二部分具有与第一部分中的声明关联的数据。所以我要做的是,阅读第一个字段定义并使用它在第二部分中创建数据的匿名类。尽量不要在程序中进行硬编码,因为我们从具有不同字段定义的不同来源获取数据。