2013-06-23 190 views
0

我有一個看起來像這樣的數據:嵌套類C#

系列1
此搜索ImageFile1
鏡像2 ImageFile2
的Image3 ImageFile3

系列2
此搜索ImageFile1
鏡像2 ImageFile2
的Image3 ImageFile3
Image4 ImageFile4

系列3
此搜索ImageFile1

我試圖來存儲它使用列表和這個類:

private List<SeriesClass> dcm = new List<SeriesClass>(); 

    public class SeriesClass 
    { 

     public int SeriesId { get; set; } 
     public int Value1 { get; set; } 
     public string Value2 { get; set; } 

    } 
    Loop that populates the data { 
    dcm.Add(new SeriesClass { Value1 = value1, Value2 = value2, SeriesId = seriesnum}); 
} 

顯然不包括所有的代碼。我的結果是什麼,看起來像這樣:

系列1 IMAGE1 ImageFile1
系列1鏡像2 ImageFile2
系列1的Image3 ImageFile3

系列2圖像1 ImageFile1
系列2鏡像2 ImageFile2
系列2的Image3 ImageFile3
系列2圖像4 ImageFile4

Series3 Image1 ImageFile1

我想知道是否有一種嵌套類的好方法,以便SeriesID變得像包含其餘數據的關鍵字段。就像我可以在特定系列下拉出圖像列表一樣。

我試着這樣做:

public class SeriesClass 
     { 

     public int SeriesId { get; set; } 

public class ImageClass{ 
     public int Value1 { get; set; } 
     public string Value2 { get; set; } 
      } 

     } 
    Loop that populates the data { 
     dcm.Add(new SeriesClass { SeriesClass.ImageClass.Value1 = value1, SeriesClass.ImageClass. Value2 = value2, SeriesClass.SeriesId = seriesnum}); 
} 

但List.Add東西不允許..任何幫助將不勝感激。我剛剛開始與C#一起工作,所以這對我來說有點新意。如果有更好的方法來處理鋸齒狀數組或字典,或者我也會採用這種方法。

謝謝:)

+0

您能否編輯問題以顯示輸出來自何處?就目前而言,這個問題很不明確,因爲我們無法瞭解最重要的部分。 – catfood

回答

0

我相信你需要使用字典。 Dictionary可以使用該id作爲鍵和列表作爲值。

private Dictionary<Integer,List<SeriesClass>> dict= new Dictionary<Integer,List<SeriesClass>>(); 

    public class SeriesClass 
    { 

     public int Value1 { get; set; } 
     public string Value2 { get; set; } 

    } 
    Loop that populates the data { 
    if (dict.containsKey(seriesNum)){ 
     dict[seriesNum].Add(new SeriesClass { Value1 = value1, Value2 = value2}); 
    }else{ 
     var list = new List<SeriesClass>(); 
     list.Add(new SeriesClass { Value1 = value1, Value2 = value2}); 
     dcm.Add(seriesNum, list); 
    } 
} 

我還沒有測試過代碼,所以可能會出現語法錯誤,但我希望你能得到要點。 TryGet可能會更好,而不是使用containsKey。

+0

快速響應!非常有趣,我不知道你可以用字典搜索特定的ID。會試試看!非常感謝。 – user2512802

+0

真棒..工作得很好只是不得不修復錯誤末尾dcm = dict。正是我在找什麼。感謝Osama Javed。 – user2512802