2011-04-15 66 views
92

我有一個IEnumerable<TravelDetails>,我試圖將for中的值添加到List<TravelDetails>。我不斷收到錯誤。添加列表<t> .add()另一個列表

錯誤15參數1:不能從 'System.Collections.Generic.List' 轉換爲 'TrafficCore.DataObjects.TripDetails' C:\ TrafficNew \ TI 511的Web \流量2.0 \ 511Traffic \ 511Traffic \模型\ DrivingTime.cs

我的代碼是

List<TripDetails> tripDetailsCollection = new List<TripDetails>(); 
foreach (DrivingTimeRoute dtr in dtRoutes) 
{ 
    foreach (Trip trip in dtr.Trips) 
    { 
     foreach (TripPathLink tpl in trip.TripPathLinks) 
     { 
      tplCollection.Add(tpl); 
     } 
     IEnumerable<TripDetails> tripDetails = //long Linq-to-Sql here 
     List<TripDetails> td = tripDetails.ToList(); 
     tripDetailsCollection.Add(td); // <<< Error here 
    } 
} 

有人能幫助我。
謝謝, Pawan

+0

你能告訴什麼線是錯誤的? – 2011-04-15 01:26:08

回答

195

List<T>.Add增加了一個單一的元素。而是使用List<T>.AddRange添加多個值。

此外,List<T>.AddRange需要一個IEnumerable<T>,所以你不需要tripDetails轉換成List<TripDetails>,你可以直接通過它,例如:

tripDetailsCollection.AddRange(tripDetails); 
相關問題