[英]How to filter a list in C# with lambda expression?
我试图过滤一个列表,这样就会产生一个只有布里斯班郊区的列表?
C#
Temp t1 = new Temp() { propertyaddress = "1 russel street", suburb = "brisbane" };
Temp t2 = new Temp() { propertyaddress = "12 bret street", suburb = "sydney" };
List<Temp> tlist = new List<Temp>();
tlist.Add(t1);
tlist.Add(t2);
List<Temp> tlistFiltered = new List<Temp>();
//tlistFiltered. how to filter this so the result is just the suburbs from brisbane?
public class Temp
{
public string propertyaddress { get; set; }
public string suburb { get; set; }
}
使用Where
子句筛选序列
var tlistFiltered = tlist.Where(item => item.suburb == "brisbane")
LINQ表达式如Where返回IEnumerable<T>
。 我通常使用var捕获结果,但您也可以使用ToList()
将结果投影到列表中。 只是取决于您稍后需要对列表执行的操作。
List<Temp> tlistFiltered = tlist
.Where(item => item.suburb == "brisbane")
.ToList()
请注意,使用上面的内容,您不必分配新列表。 Where
和ToList()
方法都返回一个您需要使用引用捕获的新序列。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.