添加 List < t > . add()另一个列表

我有一个 IEnumerable<TravelDetails>,我正在尝试把 for循环中的值添加到 List<TravelDetails>。我总是出错。

错误15参数1: 无法从“ System. Collections.Generic. List”转换为“ TrafficCore. DataObjects. TripDetails”C: TrafficNew TI 511-Web Traffic 2.0511Traffic 511Traffic Model 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
}
}

谁能帮帮我。
谢谢, 帕万

255460 次浏览

List<T>.Add 添加单个元素,而使用 List<T>.AddRange添加多个值。

此外,List<T>.AddRange采用 IEnumerable<T>,所以你不需要将 tripDetails转换成 List<TripDetails>,你可以直接传递它,例如:

tripDetailsCollection.AddRange(tripDetails);