我有一个类'PersonnelVehicle'的对象,其结构如下:
public class PersonnelVehicle
{
private Guid _personnelId;
public Guid PersonnelId
{
get
{
return _personnelId;
}
}
private int _Age;
public int Age
{
get
{
return _Age;
}
}
private string _personnelName;
public string PersonnelName
{
get
{
return _personnelName;
}
}
}
我知道如何使用lambda表达式获取单个元素
即ObjectPersonnel.Select(x => x.PersonnelId)
1)但是如何获取多个元素
即使用Lambda表达式从此对象获取Age和PersonnelName?
2)另外,如果我有PersonnelVehicle的结构,如下所示,
public class PersonnelVehicle
{
public ObservableCollection<PersonnelModel> Personnel_List = new ObservableCollection<PersonnelModel>
{
new PersonnelModel{ID=Guid.NewGuid(),Name="Mr.Joe",Gender="Male",Hospital="Poly Clinic",EMPID="abc 123",Capabilities="123",Position="Assistant",Title="Test",Status="General",ICNumber="IC 123",Roles="Test"},
new PersonnelModel{ID=Guid.NewGuid(),Name="Su Su",Gender="Female",Hospital="Clementi Clinic",EMPID="abc 1234",Capabilities="1234",Position="Security",Title="Test",Status="General",ICNumber="IC 1234",Roles="Test"},
new PersonnelModel{ID=Guid.NewGuid(),Name="Ms Tan",Gender="Female",Hospital="Bishan Clinic",EMPID="abc 1235",Capabilities="1235",Position="HR",Title="Test",Status="General",ICNumber="IC 1235",Roles="Test"},
};
}
如何使用相同的方式获取所有ID和位置列表?
注意:我只需要在Lambda表达式中使用,因此来自此链接的不同问题:Linq Syntax - Selecting multiple columns
答案 0 :(得分:2)
ObjectPersonnel.Select(x=> new { x.PersonnelId , x.Age }),
答案 1 :(得分:0)
你需要在那里命名变量吗?
ObjectPersonnel.Select(x=> new { PersonnelId = x.PersonnelId , Age = x.Age })