我需要创建如下所示的结构。
第1节
问题1
消息1
第2节
问题2
消息1
消息2
我编写了下面的代码来生成它。
using System;
using System.Linq;
using System.Collections.Generic;
public class Program
{
public static void Main()
{
// Question collection
IList<Question> QuestionList = new List<Question>() {
new Question() { QuestionID = 1, QuestionName = "q1", SectionID = 1 } ,
new Question() { QuestionID = 2, QuestionName = "q2", SectionID = 1 } ,
new Question() { QuestionID = 3, QuestionName = "q3", SectionID = 2 } ,
new Question() { QuestionID = 4, QuestionName = "q4" , SectionID = 2 } ,
new Question() { QuestionID = 5, QuestionName = "q5" }
};
IList<Section> SectionList = new List<Section>() {
new Section(){ SectionID = 1, SectionName="Section 1"},
new Section(){ SectionID = 2, SectionName="Section 2"},
new Section(){ SectionID = 3, SectionName="Section 3"}
};
IList<Messages> MessagesList = new List<Messages>() {
new Messages(){ MessagesID = 1, MessagesName="Message 1",QuestionID=1},
new Messages(){ MessagesID = 2, MessagesName="Message 2",QuestionID=1},
new Messages(){ MessagesID = 3, MessagesName="Message 3",QuestionID=2}
};
var groupJoin = SectionList.GroupJoin(QuestionList, //inner sequence
sct => sct.SectionID, //outerKeySelector
s => s.SectionID, //innerKeySelector
(sct, QuestionsGroup) => new // resultSelector
{
Questions = QuestionsGroup,
SectionName = sct.SectionName
});
不幸的是,我找不到加入这两个小组的方法。因为部分和问题使用sectionid连接,而问题和消息使用questionid连接。当我使用第二组加入时,我收到错误 Questionid 在这种情况下不存在。我该如何解决这个问题。
拉风的咖菲猫
慕码人8056858
繁星淼淼
相关分类