我有一个StringCollection
对象通过ReportParameter
对象传递,我需要将其变为List<int>
。
到目前为止,我已尝试过这个
List<int> ids = (parameters != null) ? parameters[parameters.FindIndex(x => x.Name == "IDs")].Values.Cast<int>().ToList() : null;
哪个应该检查参数对象是否为null,如果不是,它会找到IDs参数的索引,然后尝试将值转换为int列表。我一直收到Cast is not valid
错误。我如何将StringCollection
转换为List<int>
?
答案 0 :(得分:4)
它们是字符串值,您不能将字符串转换为nginx: [emerg] invalid number of arguments in "ssl_certificate" directive in (way to config)
。你需要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>()
上应用LINQ。