大家。我正在使用EF6和Sql compact在C#中编写一个简单的数据库应用程序。在我的数据库中,我有3个表:Participants,SurveyItems和Responses:
我的应用程序需要从这三个表中绘制以创建数据的2D表示,以便:每列代表一个SurveyItem,每行代表1个参与者,每个Cell代表一个响应(即参与者&# 39;对调查项目的回应)。
我有一个LINQ查询,可以提取调查回复并按参与者对其进行分组:
var dataRows = Responses.Where(r => r.Participant.StudyID == XX)
.GroupJoin(SurveyItems,
r => r.ItemID,
s => s.ID,
(c, newRow) => c).GroupBy(p => p.Participant);
我想我可以简单地遍历查询结果并以这种方式构建表,但这似乎相当不优雅。我认为必须有一种方法来构建一个查询来构建数据以满足我的需求,但我现在似乎无法用脑包裹它。任何帮助将非常感激。
谢谢!