2012-01-22 30 views
0

檢索數據庫中的項目列表時出現問題。這是我正在嘗試的。無法將SubjectAreaGroup列表轉換爲SubjectAreaGroup列表???

List<SubjectAreaGroup> subjectAreas = examInstance.CurrentQuestionGroup.QuestionTypeGroups.Select(q => q.SubjectAreaGroups).toList(); 

但我這樣做的時候,它給了我,我不能一個SubjectAreaGroup列表轉換爲... SubjectAreaGroup列表中的錯誤。如果它們是相同的東西,那我爲什麼不能轉換它們呢?

回答

0

我認爲問題是由於q.SubjectAreaGroups屬性給List<SubjectAreaGroup>每個 QuestionTypeGroup。因此,您的Select聲明爲您提供了兩級序列:IEnumerable<List<SubjectAreaGroup>>

要解決這個問題,你只需要使用SelectMany運營商的結果序列壓扁成一個序列:

List<SubjectAreaGroup> subjectAreas = 
    examInstance.CurrentQuestionGroup 
       .QuestionTypeGroups 
       .SelectMany(q => q.SubjectAreaGroups) 
       .ToList();