我正在使用PCL(Profile7),我遇到了一个问题,即从fieldInfo.GetValue(myItem)
返回的对象无法转换为数组。
我在使用null
As
获得演员点数异常
如何将此对象转换为集合?
注意:我不知道类型是什么,因为我无法访问它。它是我正在使用的库的内部
答案 0 :(得分:1)
检查dynamicProperties
对象的类型,它在您显示的调试器屏幕截图中不可见。很可能它是某种List<>
。
如果它是一个引用类型数组(例如string[]
或object[]
),您尝试的转换只会成功,如果类型是结构,它将失败,如此问题所示:{{3} }
在任何情况下,IReadOnlyCollection<T>
,IReadOnlyList<T>
和IEnumerable<T>
接口都是协变的,您可以尝试转换为IEnumerable<object>
,或者如果您需要更多信息,例如计数或索引器访问,尝试其他接口之一。