2016-04-19 39 views
2

我想要一個列表,它在今天前五天開始,在今天后十天結束。 在列表中,我希望每天都生成一個項目符號。爲什麼我的列表顯示每個對象是「System.Collections.Generic.List`1 [System.DateTime]」

我似乎得到的要點正確的號碼,但每個人都有的System.Collections.Generic.List`1 [System.DateTime的]

我的代碼如下值:

@{ 
    var dates = new List<DateTime>(); 
    var start = DateTime.Now; 
    var end = start.AddDays(10); 

    for (var dt = start; dt <= end; dt = dt.AddDays(1)) 
    { 
     <li>@dates</li> 
     dates.Add(dt); 
    } 
} 

顯示:

System.Collections.Generic.List`1[System.DateTime] 
System.Collections.Generic.List`1[System.DateTime] 
System.Collections.Generic.List`1[System.DateTime] 
System.Collections.Generic.List`1[System.DateTime] 
System.Collections.Generic.List`1[System.DateTime] 
System.Collections.Generic.List`1[System.DateTime] 
System.Collections.Generic.List`1[System.DateTime] 
System.Collections.Generic.List`1[System.DateTime] 
System.Collections.Generic.List`1[System.DateTime] 
System.Collections.Generic.List`1[System.DateTime] 
System.Collections.Generic.List`1[System.DateTime] 

我相信不管我缺少的是顯而易見的......我覺得自己很蠢,但任何幫助,將不勝感激。

+0

我想:

試試這個代碼。 –

回答

2

這就是你要告訴它做的。

for (var dt = start; dt <= end; dt = dt.AddDays(1)) 
    { 
     <li>@dates</li> <-- for each iteration, print dates.tostring 
     dates.Add(dt); 
    } 

的funcition List<DateTime>.ToString()僅返回類型名稱,其以長格式是System.Collections.Generic.List1[System.DateTime]。你想

  • @dt
  • for (var dt = start; dt <= end; dt = dt.AddDays(1)) 
        { 
         <li>@dt</li> 
         dates.Add(dt); 
        } 
    
    +1

    謝謝你的工作,就像我想的那樣。我覺得自己像個白癡。非常感謝! – Cecily

    +1

    重要的是你現在知道要尋找什麼。當你看到輸出中類名稱看起來像什麼時,你知道有人(1)打印了錯誤的變量或者(2)忘記了重寫'ToString()'。 –

    相關問題