1
根据运行时变量的类型是否可以创建类型为T
的类的实例?根据运行时变量的类型创建通用类
例如:
var myType = myVariable.GetType();
var myTestClass = new TestClass<myType>();
这将无法编译,但希望显示了我想要的目的。
有没有办法?
编辑
说阶级是这样的:
public class TestClass<T>
{
public string StringValue
{
get
{
return this.TypeValue == null ? string.Empty : this.TypeValue.ToString();
}
}
public T TypeValue { get; set; }
}
如果我不喜欢的东西:
var test1 = TestClass((dynamic)x); // x is an int
我就可以设置像test1.TypedValue = 10
如果我不喜欢的东西:
var test2 = TestClass((dynamic)y); // y is a bool
我就可以设置像test2.TypedValue = true
目前,我得到一个错误,说明
不能int类型隐式转换为识别TestClass(或布尔到TesClass)
+1作弊.. evilishly – quetzalcoatl
@quetzalcoatl其实,我也搞砸了电话;修正在编辑 –
@davy如果'myVariable'是'int',那么什么是'myProp'?什么声明'myProp'?因为它显然不是'int'... –