我想从Linq查询中获取匿名字段。我的查询是
from p in product
Select new myProduct
{
id = p.Id,
Name = p.Name,
P.MobileNo
}
//Here is myProduct class
class myProduct
{
public int Id,
public string Name
}
现在 P.MobileNo 是匿名的,我也想返回它。我无法更改myProduct类中的任何内容。
谁知道怎么做?谢谢
答案 0 :(得分:3)
您需要使用匿名类型
from p in product
select new
{
p.Id,
p.Name,
p.MobileNo
}
或者创建另一个包含MobileNo
属性的命名类型。如果您需要从方法中返回
答案 1 :(得分:2)
创建一个将继承myProduct的类。
class myProduct
{
public int Id {get;set;}
public string Name {get;set;}
}
class mySecondProduct : myProduct
{
public string MobileNo {get;set;}
}
在Linq:
from p in product
Select new mySecondProduct
{
id = p.Id,
Name = p.Name,
P.MobileNo
}
答案 2 :(得分:2)
您可以将myProduct对象和P.MobileNo包装成匿名类型:
from p in product
select new
{
Product = new myProduct { Id = p.Id, Name = p.Name},
MobileNo = P.MobileNo
}