2016-11-08 1 views
-1

나는 c#에 새로 온 사람이 클래스 쓰기 :
왜 C# 목록에 목록을 저장할 수 없습니까?

public class MANAGER 
    { 
     public string VersionName { get; set; } 
     public Double Value { get; set; } 

    } 


을이를 사용

List<MANAGER> lstSummary = new List<MANAGER>(); 
MANAGER summary = new MANAGER(); 
summary.VersionName = "12"; 
summary.Value =12; 
lstSummary.Add(summary); 
summary.VersionName = "13"; 
summary.Value = 19; 
lstSummary.Add(summary); 


있지만 최대 코드 단지 최신 클래스 레코드를 저장, 단지 VersionName=13 and Value=19을 저장 의미 , 어떻게 그 문제를 해결할 수 있습니까?

답변

3

당신은 그래서 같은 summary 변수를 다시 인스턴스화 할 수 있습니다

MANAGER summary = new MANAGER(); 
summary.VersionName = "12"; 
summary.Value =12; 
lstSummary.Add(summary); 

summary = new MANAGER(); // <-- add this 
summary.VersionName = "13"; 
summary.Value = 19; 
lstSummary.Add(summary); 
+0

5 분 후에 답을 수락합니다. 감사합니다. –

2

다른 답변에서 별도가 필요 있도록, 목록에 여러 번 같은 개체를 추가한다는 것입니다 설명 된대로 문제 하나. 이런 식으로 할 수도 있고, 변수를 명시 적으로 사용하지 않아도된다. 왜냐하면 C#은 초기화자를 허용하기 때문이다. 거의 같은 로직이지만 조금 더 멋지고 읽기 쉽습니다.

var lstSummary = new List<MANAGER> 
{ 
    new Manager 
    { 
     VersionName = "12", 
     Value = 12 
    }, 
    new Manager 
    { 
     VersionName = "13", 
     Value = 19 
    } 
} 
관련 문제