我有一个定义了列表的类。
class Program
{
public List<string> list { get; set; }
};
我需要使用PropertyInfo检索此列表,但问题是该列表可以是任何类型(此处为字符串)。如何使用propertyinfo提取列表的值,因为getValue()不会返回列表。
您可以将其强制转换为IList
,然后使用循环:
var myList = (IList)typeof(Program)
.GetProperty("list")
.GetValue(yourInstance);
如果你不知道列表的实际类型,那就是你所能做的。如果你在编译时知道类型,那么你可以将其转换为IList<T>