C# 中的SelectMany是干嘛用的
SelectMany是LINQ中的一个操作符,用于将一个集合的每个元素的子集(通常是一个集合)展开成一个单一的集合。它的作用类似于嵌套的for循环,可以用于处理嵌套的集合数据。
例如,假设有一个包含多个订单的订单列表,每个订单又包含多个商品。我们可以使用SelectMany将所有商品展开成一个单一的集合,然后对这个集合进行操作或筛选出特定的商品信息。
示例代码:
class Order
{
public int OrderId { get; set; }
public List<Product> Products { get; set; }
}
class Product
{
public int ProductId { get; set; }
public string ProductName { get; set; }
}
List<Order> orders = new List<Order> {
new Order { OrderId = 1, Products = new List<Product> {
new Product { ProductId = 1, ProductName = "Product 1" },
new Product { ProductId = 2, ProductName = "Product 2" }
} },
new Order { OrderId = 2, Products = new List<Product> {
new Product { ProductId = 3, ProductName = "Product 3" },
new Product { ProductId = 4, ProductName = "Product 4" }
} }
};
var products = orders.SelectMany(order => order.Products);
在这个例子中,我们使用SelectMany操作符将每个订单中的商品列表展开成一个单一的集合。最后得到的products集合中包含了所有商品的信息。
原文地址: https://www.cveoy.top/t/topic/bVRX 著作权归作者所有。请勿转载和采集!