当前位置: 首页 > 知识库问答 >
问题:

如何在LINQGroupBy中获取分组值列表?

叶书
2023-03-14

Linq新手在这里,与我的第一组问题进行斗争。

我有一个KeywordInstance类型的对象列表,这些对象表示一个关键字,以及应用该关键字的数据库记录的ID。

Keyword      RecordID
macrophages  1
macrophages  2
cell cycle   3 
map kinase   2
cell cycle   1

我想要的是所有关键字的集合,每个关键字应用的RecordID列表

Keyword     RecordIDs 
macrophages 1, 2
cell cycle  1, 3
map kinase  2

我尝试使用Linq将其放入一个新对象中。我只得到了不同的关键字。

var关键字=所有单词。群比(w=

g是IGrouping类型的,通过留档,它只有属性Key,但甚至没有属性Value。我在互联网上看到的所有Groupby的例子都告诉我选择g本身,但是

var keywords = allWords
    .GroupBy(w => w.keyword)
    .Select(g => new {keyword = g.Key, RecordIDs = g});

不是我想要的。

任何试图从g中获取信息的尝试都会失败,并显示错误消息System。林克。IGropuing

我做错了什么?


共有1个答案

严峰
2023-03-14

我想你已经接近你的解决方案了。

var keywords = allWords
    .GroupBy(w => w.keyword)
    .Select(g => new 
           { 
              keyword = g.Key, 
              RecordIDs = g.Select(c => c.ID)
           });

只需选择所需的记录即可
您看到关键字列和ID列的原因是因为它是g

 类似资料:
  • 问题内容: 如何获得数组中唯一值的列表?我是否总是必须使用第二个数组,或者是否有类似于JavaScript中Java哈希表的东西? 我将仅使用 JavaScript 和 jQuery 。不能使用其他库。 问题答案: 由于我在@Rocket答案的注释中继续进行了讨论,因此我不妨提供一个不使用任何库的示例。这需要两个新的原型函数,并且 为了提高可靠性,可以用MDN的垫片代替,并检查每个元素的值是否等于

  • 问题内容: 如何在Python中获取字典中的值列表? 在Java中,将Map的值作为列表获取就像在操作中一样容易。我想知道Python中是否有类似的简单方法可以从字典中获取值列表。 问题答案: 是的,这与Python 2 完全相同: 在Python 3中 (在其中返回字典值的 视图 ):

  • 我想从Moodle获得一个组/分组ID,用于课程UI的自定义。我需要向特定的组/分组显示资源。我已经安排好了,穆德尔。我登录是因为不同的用户只能访问分配给该用户组的资源。 我的主题有一个自定义的侧边栏菜单,其中链接到该课程的页面、作业和所有其他资源给用户。我需要使用PHP if/else语句在菜单中向用户显示正确的资源,这取决于group/grouping id的值。我在moodle.com上找到

  • 我知道已经提出了许多关于同样的问题,但没有一个对我的案件有所帮助。 在这里,我试图在Split的第一次迭代中将一些值设置到Header中,然后在拆分的第二次迭代中,我需要旧的交换值将其附加到当前值。 代码:SomeDummyClass2.java 骆驼路线: 我已经通过了其他一些问题,他们要求使用CamelSplitIndex或AggregationStrategy,但我是新手,有人能帮帮我吗?

  • 假设我有一个像这样的对象数组: 我如何循环它(如果我必须),以便我得到一个特定键值的列表。让我们来举一个所有名字的列表。 多谢了。

  • 问题内容: 现在说我有一个numpy数组,定义为 现在,我想要一个包含缺失值的所有索引的列表,在这种情况下。 有什么办法可以做到吗? 问题答案: np.isnan与np.argwhere结合 输出: