我想创建一个具有动态参数的对象实例,例如
private Type ClassType { get; set; }
model = (CreateObject<typeof(this.ClassType)>)ser.Deserialize(sr);
private T CreateObject<T>()
{
return (T)Activator.CreateInstance(this.ClassType);
}
我想在没有“startconfig”之类的修复类型的情况下尝试它。但它仍然不起作用,你能帮帮我吗?
var mi = GetType().GetMethod("CreateObject");
var miConstructed = mi.MakeGenericMethod(this.ClassType);
var instance = miConstructed.Invoke(this, null);
var model = (instance)ser.Deserialize(sr);
}
private T CreateObject<T>()
{
return (T)Activator.CreateInstance(this.ClassType);
}
这无论如何都不起作用,原因:找不到他的类型或名称空间名称“类型/名称空间”(您是否缺少 using 指令或程序集引用?)
这发生在铸造 ser.Deserialize(sr);