转换i分组<;T、 U>;到i分组<;T、 V>;使用LINQ

转换i分组<;T、 U>;到i分组<;T、 V>;使用LINQ,linq,Linq,如何进行转换?是否可以使用一些简单的LINQ查询?如果V是查询中未涉及的其他类型,则可以使用let关键字创建实例,然后对其进行分组 from x in Y let v = new V(x.Whatever) group v by v.Whatever into vGroup select vGroup 如果V是查询中未涉及的其他类型,则可以使用let关键字创建实例,然后对其进行分组 from x in Y let v = new V(x.Whatever) group v by v.Whate

如何进行转换?是否可以使用一些简单的LINQ查询?

如果V是查询中未涉及的其他类型,则可以使用let关键字创建实例,然后对其进行分组

from x in Y
let v = new V(x.Whatever)
group v by v.Whatever into vGroup
select vGroup

如果V是查询中未涉及的其他类型,则可以使用let关键字创建实例,然后对其进行分组

from x in Y
let v = new V(x.Whatever)
group v by v.Whatever into vGroup
select vGroup

假设V继承自U,并且您希望将每个U强制转换为V:

IEnumerable<IGrouping<string, U>> groupingsOfU =
    from u in listOfU
    group u by u.Foo;

IEnumerable<IGrouping<string, V>> groupingsOfV =
    from g in groupingsOfU
    from u in g
    group (V)u by g.Key;
IEnumerable groupingsOfU=
来自listOfU的u
u组由u.Foo;
IEnumerable groupingsOfV=
从g到groupingsOfU
从u到g
按g键分组(V)u组;

假设V从U继承,并且您希望将每个U强制转换为V:

IEnumerable<IGrouping<string, U>> groupingsOfU =
    from u in listOfU
    group u by u.Foo;

IEnumerable<IGrouping<string, V>> groupingsOfV =
    from g in groupingsOfU
    from u in g
    group (V)u by g.Key;
IEnumerable groupingsOfU=
来自listOfU的u
u组由u.Foo;
IEnumerable groupingsOfV=
从g到groupingsOfU
从u到g
按g键分组(V)u组;

U
V
之间的关系是什么?唯一的关系是:Func myFunc;
U
V
之间的关系是什么?唯一的关系是:Func myFunc;