我得到了下面的代码创建我的课:提供的类型来实例化一个泛型类
public class GenericObject<T>
{
[...]
public GenericObject(object source, string propertyName)
{
[...]
}
}
,然后我想创建我的类的实例。这里是循环我有:
foreach (PropertyInfo pi in container.GetType().GetProperties())
{
//var type = pi.PropertyType;
GenericObject<pi.PropertyType> p = new GenericObject<pi.PropertyType>(container, pi.Name);
}
编译器告诉我,“P1”是不是一个命名空间(???) 我这个代码的尝试:
Type type = pi.PropertyType;
GenericObject<type> p = new GenericObject<type>(container, pi.Name);
,但我得到了同样的错误('类型'不是一个命名空间) 我该怎么办? thx提前寻求帮助
从你的代码(例如'PrimitivePropertyProxy'和你在哪里使用'GenericObject')中不是很清楚,但是你遇到的问题是'pi.PropertyType'一个**变量**,而不是一个**类型**。 –
编辑我的问题! –