Linq到实体连接与群连接

Linq到实体连接与群连接

我已经在网上搜索过了,但是我仍然找不到一个简单的答案。有谁能(用简单的英语)解释一下GroupJoin是?它和一个正常的内在有什么不同?Join?它常用吗?它只用于方法语法吗?查询语法呢?一个c#代码示例会很好。



小怪兽爱吃肉
浏览 402回答 2
2回答

明月笑刀无情

要理解GroupJoin所做的事情,最好的方法就是考虑加入。在那里,我们的总体想法是,我们查看“外部”输入序列,从“内部”序列中找到所有匹配的项(基于每个序列上的关键投影),然后生成一对匹配的元素。GroupJoin是类似的,只不过它不是生成一对元素,而是根据每个“外部”项和匹配“内部”项的顺序为每个“外部”项生成一个结果。.唯一的区别是返回语句:加入:var lookup = inner.ToLookup(innerKeySelector, comparer); foreach (var outerElement in outer) {      var key = outerKeySelector(outerElement);      foreach (var innerElement in lookup[key])      {          yield return resultSelector(outerElement, innerElement);      } }GroupJoin:var lookup = inner.ToLookup(innerKeySelector, comparer); foreach (var outerElement in outer) {      var key = outerKeySelector(outerElement);      yield return resultSelector(outerElement, lookup[key]); }
打开App,查看更多内容
随时随地看视频慕课网APP