我创建了用于调查的数据库,其中问题和答案存储在数据库中。在这里,我创建了调查表(我有3种调查类型)。它包含SurveyID,SurveyName。另一个表是Questions,它包含QuestionId,QuestionText。下表是Answers,它具有AnswerId和AnswerText。不同的调查可能有相同的问题。因此,我为多对多关系创建了表SurveysQuestions。另一个表是SurveysQuestionsAnswers表,它具有SurveyId,QuestionId,AnswerId,并且它也是多对多关系。现在,我需要为调查1选择问题,并且其中应包含问题列表。每个问题应具有问题文本和属于该问题的答案列表。我不能写linq查询来选择这样。我附上我的ViewModel和数据库设计。 enter image description here
List<SurveyViewModel> list = (from jsqa in db.JSTC_SURVEY_QUESTION_ANSWER
where jsqa.SURVEY_ID == 1
select new SurveyViewModel
{
question = (from jsq in db.JSTC_SURVEY_QUESTION where jsq.QUESTION_ID == jsqa.QUESTION_ID select jsq.QUESTION_TEXT).ToString(),
answers = (from jsa in db.JSTC_SURVEY_ANSWER where jsa.ANSWER_ID == jsqa.ANSWER_ID select jsa.ANSWER_TEXT).ToList()
}).ToList();