将字符串集合转换为 List
本文关键字:int List 字符串 集合 转换 | 更新日期: 2023-09-27 17:55:09
我有一个StringCollection
对象通过一个ReportParameter
对象传递,我需要让它成为一个List<int>
。
到目前为止,我已经尝试过这个
List<int> ids = (parameters != null) ? parameters[parameters.FindIndex(x => x.Name == "IDs")].Values.Cast<int>().ToList() : null;
这应该检查参数对象是否为 null,如果不是,它会找到 IDs 参数的索引,然后尝试将值强制转换为整数列表。我不断收到Cast is not valid
错误。我将如何将StringCollection
转换为List<int>
?
它们是
字符串值,不能将字符串强制转换为int
。您需要像这样Convert/Parse
它:
parameters[parameters.FindIndex(x => x.Name == "IDs")].Values
.Cast<String>() //So that LINQ could be applied
.Select(int.Parse)
.ToList()
您需要.Cast<String>()
才能在StringCollection
上应用 LINQ。