Linq 中常被忽略的几个实用方法

1. SelectMany 

将序列的每个元素投影到一个 IEnumerable< T> ,并将结果序列组合为一个序列。

个人理解. 其实就是将一个集合(OrderList)中,每个元素的指定集合类型的属性(OrderDetailList) Union起来.

示例代码:

DB.OrderList.Where(j=>j.OrderTime < dateTime).SelectMany(j=>j.OrderDetailList).ToList();  //返回符合条件的制定订单的所有明细集合.

 

2. Zip

通过使用指定的谓词函数合并两个序列。 

int[] numbers = { 1, 2, 3, 4 };

string[] words = { "one", "two", "three" };

var numbersAndWords = numbers.AsQueryable().Zip(words, (first, second) => first + " " + second);

result: {"1 one" ,"2 two", "3 three" }

posted on 2012-10-13 02:44  Terry@  阅读(191)  评论(0编辑  收藏  举报

导航