1 回答

TA貢獻1785條經驗 獲得超8個贊
我能夠通過將其分解為三個獨立的查詢而不是一個查詢來完成上述操作。我仍然很想知道社區中是否有人有辦法將其作為一個查詢來完成。
不管怎樣,下面是我的代碼。我能夠使用 Responses 和 ResponseIssues 的正確行數更新 Questions Parent,并返回所有問題。
var question = await _dbContext.Questions
.Include(x => x.SurveySection)
.Include(x => x.Survey)
.Where(x => x.SurveyId == surveyId)
.OrderBy(x => x.Position)
.ToListAsync();
var responses = await _dbContext.Responses
.Where(x => x.SiteUserId == siteUserId &&
x.SurveyPeriodId == surveyPeriodId)
.ToListAsync();
var responseIssues = await _dbContext.ResponseIssues
.Where(x => x.SurveyPeriodId == surveyPeriodId &&
x.SiteUserId == siteUserId)
.ToListAsync();
foreach (var item in question)
{
var foundResponse = responses.Where(x => x.QuestionId == item.Id).ToList();
var foundResponseIssue = responseIssues.Where(x => x.QuestionId == item.Id).ToList();
if (foundResponse != null)
{
item.Responses = foundResponse;
}
if (foundResponseIssue != null)
{
item.ResponseIssues = foundResponseIssue;
}
}
- 1 回答
- 0 關注
- 93 瀏覽
添加回答
舉報