我有一个IEnumerable<TravelDetails>,我正在try 将for循环中的值添加到List<TravelDetails>.我不断地犯错误.

错误15参数1:无法从‘System.Collections.Generic.List’转换为‘TrafficCore.DataObjects.TripDetails’C:\TrafficNew\TI511-WEB\TrafficCore.DataObjects.TripDetails‘C:\TrafficNew\TI511-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>,因此您不需要将tripDetails转换为List<TripDetails>,您可以直接传递它,例如:

tripDetailsCollection.AddRange(tripDetails);

.net相关问答推荐

为什么脚本不从 _Layout 加载并且必须添加到部分视图中?

从 Contentful 中的富文本元素中获取价值?

代理、包装器或外观类之间有什么区别

将 BitmapImage 转换为 Bitmap,反之亦然

File.ReadAllLines() 和 File.ReadAllText() 有什么区别?

ReaderWriterLock 与锁{}

什么是编组?当某些东西被编组时会发生什么?

如何使用 Android 使用 WCF 服务

X509Certificate 构造函数异常

.NET 的 String.Normalize 有什么作用?

什么是 C# 中的自动属性,它们的用途是什么?

析构函数、dispose 和 finalize 方法的区别

加载程序集、查找类和调用 Run() 方法的正确方法

如何确定字符串是 C# 中的有效 IPv4 还是 IPv6 地址?

为什么发布和调试模式下的代码行为不同?

如何获得 Bin 路径?

WinForms 中的模型视图演示者

实体框架太慢了.我有哪些 Select ?

System.ServiceModel 在 .NET Core 项目中找不到

不签署 .NET 程序集有什么问题吗?