我有这样的Linq,我想从Orders表中获取所有记录并添加新的动态字段。下面的代码不起作用。什么是正确的语法?
user.dcOrders.Select(p =>p, new { FullName = p.FirstName + " " + p.LastName })
答案 0 :(得分:3)
您需要列出所有列。
或者,您可以向任何类dcOrders
添加新属性。它应该指定为partial class
,以便您可以将FullName
属性添加到新文件中,以便在重新生成.designer.cs
文件时不会覆盖它。
类似
public partial class Orders
{
public string FullName { get { return this.FirstName + " " + this.LastName; } }
}
请务必将其添加到不是.designer.cs
文件的单独文件中。 (我在这里假设LINQ to SQL。)
然后您不需要进行任何特殊选择,因为FullName
已经作为对象的属性存在。你可以直接使用它。
答案 1 :(得分:1)
试试这个:
var names = user.dcOrders.Select(p => new {
User = p,
FullName = p.FirstName + " " + p.LastName
});