泛型方法
void MethodA<T>(int i) where T : new()
{
T a=new T();
..........
}我想如下调用:
程序运行时已知类型T,假定我是通过(Type T=typeof(ClassA))获取的,
是否有办法实现调用:MethodA(T)(0)?
void MethodA<T>(int i) where T : new()
{
T a=new T();
..........
}我想如下调用:
程序运行时已知类型T,假定我是通过(Type T=typeof(ClassA))获取的,
是否有办法实现调用:MethodA(T)(0)?
页面A跳到页面B时,A页面传递一类型名称字符串给B页面,
然后B再根据类型名称调用泛型方法,
可能如下:
switch (类型名称)
{
case "A":
方法名<A>(参数)
break;
case "B":
方法名<B>(参数)
break;
case "C":
方法名<C>(参数)
break;
}
现在我想了解的是,有无方法:
Type T=Type.GetType(类型名称)
方法名<T>(参数)
{
T a = Activator.CreateInstance<T>();
}
总算明白了我的意思,握个手.不知是否有别的变通方法?