C# 从列表
我有一个定义如下的类:C# 从列表,c#,linq,C#,Linq,我有一个定义如下的类: class A { int contractID; string name; string blah; etc... } 列表中存储了多个ClassA。我需要根据列表中的所有缩略语创建一个列表。在LINQ中有没有一种方法可以这样做而不是遍历列表?您可以使用extension方法创建压缩的投影。比如: var listOfClass = new List<ClassA>(); //Or however you get your list. var co
class A
{
int contractID;
string name;
string blah;
etc...
}
列表中存储了多个ClassA。我需要根据列表中的所有缩略语创建一个列表。在LINQ中有没有一种方法可以这样做而不是遍历列表?您可以使用extension方法创建压缩的投影。比如:
var listOfClass = new List<ClassA>(); //Or however you get your list.
var contractIDs = listOfClass.Select(x => x.contractID).ToList();
var only contractids=myList.Selectx=>x.contractID.ToList
Select是一种通用方法。如果显式指定,则为Select,指定输入和输出类型
最后的ToList将IEnumerable转换为List,它现在在输入列表上进行迭代,而不是在枚举IEnumerable时进行迭代。如果您有一个列表,您可以使用LINQ创建一个列表,如下所示
List<int> contractIDs = mycollection.Select(a => a.ContractID).ToList();
List<int> contractIDs = mycollection.Select(a => a.ContractID).ToList();
var list = new List<ClassA>();
...
list.Select(a => a.ContractID);