【发布时间】:2012-02-13 15:50:37
【问题描述】:
在混合 Linq-to-SQL 和 Linq-to-XML 时,我曾经能够做这样的事情:
XElement xml = new XElement("People");
xml.Add(from p in Context.People
select new XElement("Person",
new XElement("Id", p.Id),
new XElement("Name", p.Name)));
在将一些东西转换为 EF 时,我现在得到了这个异常:“LINQ to Entities 中仅支持无参数的构造函数和初始化程序。”
这让我相信我现在需要做这样的事情:
XElement xml = new XElement("People");
var peopleResults = Context.People.Select(p => { p.Id, p.Name }).ToList();
xml.Add(from p in peopleResults
select new XElement("Person",
new XElement("Id", p.Id),
new XElement("Name", p.Name)));
这是我现在唯一的选择,还是有另一种更简洁的方式在代码中表达这一点?
【问题讨论】:
标签: c# .net linq entity-framework linq-to-xml