我有一个我的实体列表,我使用Select从我的实体获取一些属性。我的实体具有PrimaryContact
属性,并且具有LastName
属性。所以如果我这样使用它可以正常工作
var b = items.Select(s => s[PropertyName]); //Property name is "PrimaryContact" it's fine.
但是如果我使用"PrimaryContact.LastName"
则无效
var x = items.Select(s => s[PropertyName]); //Property name is "PrimaryContact.LastName" it's not working
PropertyName
可能是evrything:" PrimaryContact.LastName"," PrimaryContact.FirstName"," PrimaryContact.Address.City"
请有人帮助我。
答案 0 :(得分:0)
试试这个,
var x = items.Select(s => s["PrimaryContact"].LastName);
答案 1 :(得分:0)
如果您只想要一个项LastName
,那么
var x = items.Select(s => s["PrimaryContact"]).FirstOrDefault().LastName;
如果你想要所有项目Lastname
作为集合,那么
var x = items.Select(s => s["PrimaryContact"].LastName);
如果您想要所有属性,那么首先选择所有属性然后迭代它
ar x = items.Select(s => s["PrimaryContact"]);
foreach(var p in x)
{
// P.FirstName
// p.LastName
// p.Address.City
}
答案 2 :(得分:0)
Select
返回IEnumerable
,如果您想要LastName
中的所有items
,那么:
var b = items.Select(s => s["PrimaryContact"].LastName);
否则,如果您只想要其中一个,那么在Select
使用FirstOrDefault
之后:
var b = items.Select(s => s["PrimaryContact"]).FirstOrDefault().LastName;