gpt4 book ai didi

LINQ 使用 IEnumerable 选择

转载 作者:行者123 更新时间:2023-12-02 08:47:43 25 4
gpt4 key购买 nike

我正在使用 EF 4。

我有一个 IEnumerable<Type01>其中每个项目(Type01)都有一个 IEnumerable<Type02> .

这可以解释:

Type01 objType01 = ...;
IEnumerable<Type02> en = objType01.allObjType02;

我需要做(使用 LINQ)一个给我 IEnumerable<Type01> 的选择结果,但“记录数”必须与所有Type02的“记录数”之和相同项目。

例如。对于此列表:

myItem01a
myItem02a
myItem02b
myItem01b
myItem02c
myItem02d
myItem02e

选择返回必须是:

myItem01a
myItem01a
myItem01b
myItem01b
myItem01b

我知道如何使用旧式 SQL(JOIN 子句)来做到这一点。但我对 LINQ 表达式还很陌生。怎么做到的?

最佳答案

作弊。使用 SelectMany (或等效倍数 from s)遍历所有 Type02 s,但只产生 Type01每轮:

var repeatedType01s = 
from t01 in enumerableOfType01s
from t02 in t01.allObjType02
select t01;

现在repeatedType01s是一个 IEnumerable<Type01>具有您想要的基数。

关于LINQ 使用 IEnumerable 选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11191671/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com