C# 如何从列表中获取特定属性的值?
我有以下课程:C# 如何从列表中获取特定属性的值?,c#,.net,linq,generic-list,C#,.net,Linq,Generic List,我有以下课程: public class ClassA { public string Property1 { get; set; } public string Property2 { get; set; } public string Property3 { get; set; } } 列表中有该类的实例。如何从所有类中获取属性2的值列表 List<ClassA> list = new List<ClassA> { new ClassA {
public class ClassA
{
public string Property1 { get; set; }
public string Property2 { get; set; }
public string Property3 { get; set; }
}
列表中有该类的实例。如何从所有类中获取属性2
的值列表
List<ClassA> list = new List<ClassA>
{
new ClassA { Property2 = "value 1"},
new ClassA { Property2 = "value 2"},
};
//This is method syntax
var result = list.Select(item => item.Property2).ToList();
//This is query syntax
var result = (from item in list
select item.Property2).ToList();
你可以用
或透过:
var list=newlist();
var properties=来自列表中的项
选择item.Property2
要更改选择(…).ToList()
的“模式”,您还可以使用执行此任务的列表中现有的方法,即使用几乎相同的代码
// source is your List<ClassA>
var result = source.ConvertAll(item => item.Property2);
// result is already a List<string> so no need for extra code
//源是您的列表
var result=source.ConvertAll(item=>item.Property2);
//结果已经是一个列表,所以不需要额外的代码
以下任何答案是否解决了您的问题?
var properties = listOfA.Select(x=>x.Property2);
var list = new List<ClassA>();
var properties = from item in list
select item.Property2
// source is your List<ClassA>
var result = source.ConvertAll(item => item.Property2);
// result is already a List<string> so no need for extra code