リストの追加 .add() 別のリスト 質問する

リストの追加 .add() 別のリスト 質問する

がありIEnumerable<TravelDetails>、ループ内の値forを に追加しようとしています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
    }
}

誰か助けてくれませんか。
ありがとう、パワン

ベストアンサー1

List<T>.Add単一の要素を追加します。代わりに、List<T>.AddRange複数の値を追加します。

さらに、List<T>.AddRangeは を受け取るので、にIEnumerable<T>変換する必要はなく、直接渡すことができます。例:tripDetailsList<TripDetails>

tripDetailsCollection.AddRange(tripDetails);

おすすめ記事