[C#] 다른리스트 추가 <t> .add ()

나는 IEnumerable<TravelDetails>있고 for루프에 vales를에 추가하려고 합니다 List<TravelDetails>. 오류가 계속 발생합니다.

오류 15 인수 1 : ‘System.Collections.Generic.List’에서 ‘TrafficCore.DataObjects.TripDetails’C : \ TrafficNew \ TI 511-Web \ Traffic 2.0 \ 511Traffic \ 511Traffic \ Models \ 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
    }
}

어떤 사람이 이것으로 나를 도울 수 있습니까?
고마워, 파완



답변

List<T>.Add단일 요소를 추가합니다. 대신 List<T>.AddRange여러 값을 추가하는 데 사용 하십시오.

또한, List<T>.AddRange을 취 IEnumerable<T>하면 변환 할 필요가 없습니다, tripDetailsList<TripDetails>, 당신은 직접 예를 전달할 수 :

tripDetailsCollection.AddRange(tripDetails);


답변