繁体   English   中英

C# - 将类型数组转换为通用列表

[英]C# - Convert a Type Array to a Generic List

代码片段:

ShippingPeriod[] arrShippingPeriods;
.
.
.

List<ShippingPeriod> shippingPeriods = ShippingPeriodList.ToList<ShippingPeriod>();

最后一行不会编译,我得到的错误是:

“'ShippingPeriod []'不包含'ToList'的定义,并且最好的扩展方法重载'System.Linq.Enumerable.ToList(System.Collections.Generic.IEnumerable)'有一些无效的参数”

尝试这个:

ShippingPeriod [] arrShippingPeriods;

//init and populate array

IList<ShippingPeriods> lstShippingPeriods = 
                  arrShippingPeriods.ToList<ShippingPeriods>();

您需要在数组对象上调用ToList而不是数组中包含的对象类。

正如其他人所说,你需要在你的阵列上调用ToList 您尚未显示ShippingPeriodList是什么。

但是,当你理解这一点时,请注意你不需要提供类型参数,因为类型推断会为你做。 换句话说,这应该工作正常:

List<ShippingPeriod> list = arrShippingPeriods.ToList();

另一种选择是:

ShippingPeriod [] arrShippingPeriods;

var lstShippingPerios=new List<ShippingPeriod>(arrShippingPeriods);

由于数组已经实现了IEnumerable,因此可以将它传递给List构造函数。

希望这可以帮助

我得到了解决方案!

你必须把“使用System.Linq;” 在你的班级的标题中,就是这样。 放置它时,数组识别toList()命令。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM