我有一种情况,我在运行时反映了一组属性。当我得到实际的属性值时,它仅仅是类型对象,但我做了检查以确认它是一个通用List。在我的场景中,这些通用列表将始终包含某种类型的原始值(整数,字符串,长整型等)。有没有一种简单的方法将任何类型的List转换为字符串列表?像这样:转换列表<T>到列表<string>一般
object obj = pi.GetValue(item, null);
Type type = obj.GetType();
if (type.IsGenericType && type.GetGenericTypeDefinition() == typeof(List<>)) {
List<string> lstStrings = ???;
}
或者我必须有一个大的switch语句并将其转换为适当的运行时List类型,然后将其转换为List?
感谢
'Object.ToString' – 2015-02-06 22:02:07
完全重写了我的答案,请尝试一下。 – 2015-02-06 22:47:56