1
나는 수업을 가능한 간단하게했다. 아래는 수업입니다. 다음은Linq을 사용하여 목록에 항목 추가
List<QuestionData> FinalSet = // Filled with Data Here
IEnumerable<QuestionInfo> datapoints = from f in FinalSet
group f by new { f.QuestionID, f.Question } into fGroup
select new QuestionInfo()
{
QuestionID = fGroup.Key.QuestionID
, Question = fGroup.Key.Question,
, QuestionFinalScore = fGroup.Sum(g => g.QuestionScore)
//, ListAchieved = This is where IDK what to do :(
};
Query
내 출력입니다 아래 아래
public class QuestionData
{
property QuestionID int {get; set;}
property Question String {get; set;}
property QuestionScore int {get; set;}
<!---Few More Properties ----!>
}
public class QuestionInfo
{
property QuestionID int {get; set;}
property Question String {get; set;}
property QuestionFinalScore int {get; set;}
property List<QuestionData> ListAchieved {get; set;}
}
는
Linq
에서 그룹을 거쳐 및 내 샘플 데이터
Question | QuestionID | QuestionScore
Q1 | 1 | 10
Q1 | 1 | 20
Q2 | 2 | 10
Q2 | 2 | -5
입니다
나는Question
QuestionFinalScore
그것이 무엇인지 결국 방법으로 목록에 표시 할 수 있도록 18,
당신이 내 클래스 QuestionInfo
를 참조 이제 경우, 내 질문 ListAchieved
속성에 모든 QuestionData
를 추가해야합니다.
, ListAchieved = fGroup.ToList()
이 풋 :
는 사람이 내가 이렇게 할 생각 QuestionID
및 Question
@GiladGreen 'fGroup.ToList()'는 틀린 것이 아니라면 해당 그룹에서 QuestionFinalScore를 달성 한 QuestionDatas의 List를 반환합니다. 내 코드를 두 번 확인했는데 제대로 작동합니다. 그러나 꽤 긴 하루였습니다. 그래서 ListAchived가 무엇을 구성해야하는지 완전히 이해할 수 없었을 것입니다. –
haindl
죄송합니다. 실수였습니다. 나는'FinalSet'이'QuestionInfo'의 타입이라고 생각했습니다. 간단한'.ToList() '를 가진 해결책이 필요하다. –
이것이 효과가있다. 감사. – AVK