问题标签 [igrouping]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - IEnumerable到 IEnumerable
所以我有这个:
IEnumerable<IGrouping<UInt64, MyObject>> groupedObjects = myObjectsResults.GroupBy(x => x.Id);
问题是,我如何把这个结果变成一个IEnumerable<List<MyObject>>
?
这是我所能接受的:
IEnumerable<List<MyObject>> groupedObjects = (myObjectsResults.GroupBy(x => x.Id).SelectMany(group => group).ToList());
这显然是不正确的。有任何想法吗?
c# - 此代码中两个选择器函数的返回值之间的差异
该Students
对象具有Name
和Weight
键值对。
在 ToDictionary 方法中,t
变量的类型为IEnumerable<IGrouping<K, T>>
。那是,IEnumerable<IGrouping<int, Students>>
为什么返回的值Key
不同?它们都使用相同的变量。应该是类型。t=>t.Key
t=> t.Select(**x=> x.Key**)
t
Key
int
该图像是在执行 GroupBy 方法后拍摄的。(它不是完整图像)其中一个Key
具有 的值,另一个60
具有 和 的值。Bob
Matt
Adam
linq-to-sql - 按linq to sql中的多个字段分组
我在为LINQ
to中的分组行列表定义数据类型时遇到问题SQL
。
我有一个MyDBModel
具有 2 个属性 的模型
在控制器中,我尝试将数据放入此属性
我得到错误:
如果结果是按多列分组的列表,数据类型a_Cases
应该是什么?或者如何定义List < IGrouping < Tkey, Telement > >
结果是否由多个不同类型的字段分组?
c# - 为什么我不能返回 IEnumerable> 作为 IEnumerable>
我已经使用GroupBy()
并制作了IEnumerable<IGrouping<TKey,TValue>>
.
我可以对它进行 foreach ,并将每个元素(每个IGrouping<TKey,TValue>
)传递给一个接受的方法IEnumerable<TValue>
这不足为奇 -IGrouping<TKey,TValue>
实现IEnumerable<TValue>
但是如果我定义了一个接受的方法IEnumerable<IEnumerable<B>>
,那么我不能直接传入 的输出GroupBy()
,即使它是一个IEnumerable<>
并且其中的每个元素都是一个IEnumerable<B>
为什么?
c# - 从 C# 中的 IGrouping 获取对象
我需要从 query2 访问可用的酒店对象,在这里我可以使用 y.key 访问 HotelCode 值,但是如何从 query2 访问可用的酒店对象。
我的矩阵模型
我的查询
访问值
c# - 自己生成 IGrouping
我有一个我自己的类“Vertrag”(“Contract”)的实例列表,需要对它们进行分组。
一个简单的 GroupBy 正是我需要的:按最后四个字段分组,结果是一个 IEnumerable<IGrouping<...,Vertrag>>。我可以使用这种结果类型,它很容易迭代。
在标记为 ... 的地方没有给出类型定义。所以这似乎是一个匿名类型?
现在我有一个进一步的要求:确保有一个最大值。每组三个元素。开始新的组(仍然是相同的键!),直到全部分配完毕。我在 StackOverflow 中也找到了一个解决方案,LINQ 有点复杂但工作正常。只是返回类型稍微复杂一些。
我更愿意将这个复杂的结构转换回简单的 IGrouping 形式,以便它可以与现有代码一起使用。
我让它几乎可以工作,或者至少简化为一个与简单的 GroupBy 一样易于使用的版本,但并不完全相同。有没有办法自己创建这个匿名类型的 IGrouping,这样就不需要在原始分组之后更改代码?
密钥会不止一次出现相同的情况,这与 GroupBy 的意思完全相反。所以我不确定手工制作的 IGrouping 是否会允许它存在。
这是一个有效的 LINQPad 示例(带有类型定义):
vb.net - VB.New 如何使用多个分组迭代 LINQ 组
我花了几个小时浏览这里和网络上的档案,以了解如何迭代具有多个 VB.Net 分组的 IGroup。C# 有很多解决方案,但我真的很难转换为 VB.Net。
这是我正在分组的列表
这是我按列表中的三个属性分组的代码
接下来,我尝试遍历组,但由于组列表中的项目没有类型(即暗淡的组 As SomeType),所以我不知道如何使用它们。
这是我循环遍历组的代码
有人可以让我知道如何使用 VB.NET 迭代具有多个组的 IGoup 吗?
linq - 如何映射 IGrouping到 IGrouping?
给定一个函数f:ValueA -> ValueB
,我如何将 IGrouping 类型映射IGrouping<Key, ValueA>
到IGrouping<Key, ValueB>
?
问题实例:
假设你有这种类型:
这个查询:
这会给你一个类型的 seq: IGrouping<Tag, TaggedItem>
,但我真的想要一个类型的 seq: IGrouping<Tag, Item>
。映射函数为:fun taggedItem -> taggedItem.Item
解决方案
解决方案是避免分组映射,而是在进行分组时使用 groupValBy 进行转换,正如所选答案所指出的那样。如果您坚持,所选答案还显示了如何进行从一种类型的分组到另一种类型的映射。
c# - c# 和 LINQ - 将 IGrouping 转换为 List
我编写了以下代码以在对象列表中查找常见对象
https://dotnetfiddle.net/gCgNBf
.........................................
之后,我需要将“查询”转换为“人员”对象列表( List )以实现其他目标。
我尝试使用“ToList()” ......但它说:
“无法将 IGrouping 转换为列表”。
有人可以帮我解决吗?
c# - 将 ListView 绑定到 IQueryable>
我将 a 绑定ListView
到IQueryable<IGrouping<>>
使用 Linq-to-SQL 生成的对象,如下所示:
在标记中,我尝试引用对象的Key
属性IGrouping<>
:
<td rowspan="2"><%# Eval("Key.tbl_journal.RefNo") %></td>
但是,我收到错误:
我可以投射数据项并以这种方式显示值,但它似乎很不令人满意。
有谁知道发生了什么?抱怨应该是关于类型对象上缺少属性的问题似乎很奇怪。