You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在C#的LINQ查询中合并同THREAD_ID的两行数据

问题详情

SQL表结构及数据

IdSENDERUSERD_IDBODYTITLETHREAD_IDREPLIED
1215sthsome titleNULLNULL
2216NULLNULLNULLNULL
3217NULLsome titleNULLNULL
4115sth1question5011
5315sth2answer: question501NULL
6215NULLNULLNULLNULL

期望返回格式

[{id: 1, user_id: 15, body: "sth", title: "some title", threadMessage: null},
{id: 4, user_id: 15, body: "sth1", title: "question", 
threadMessage: {messageId: 5,threadId: 501, body: "sth2", title: "answer: question"}},
{id: 6, user_id: 15, body: null, title: "null", threadMessage: null}]

当前LINQ查询

var query = (from m in db.Message
            where m.USERD_ID = 15
            select new MessageTemp
            {
             Id = m.Id,
             Body = m.Body,
             Title = m.Title
            }).AsQueryable();

待解决问题

需要修改上述LINQ查询,实现以下两个目标:

  1. 获取相同THREAD_ID对应的threadMessage信息;
  2. 最终返回3条结果(而非当前查询会得到的4条)。

内容的提问来源于stack exchange,提问作者Monika

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 19:55:38