泛型方法
void MethodA<T>(int i) where T : new()
{
    T a=new T();
..........
}我想如下调用:
程序运行时已知类型T,假定我是通过(Type T=typeof(ClassA))获取的,
是否有办法实现调用:MethodA(T)(0)?

解决方案 »

  1.   

    http://community.csdn.net/Expert/topic/5570/5570412.xml?temp=4.256839E-02
      

  2.   

    T a = System.Activator.CreateInstance<T>();
      

  3.   

    可能我的描述不清楚.重新描述一下,
    页面A跳到页面B时,A页面传递一类型名称字符串给B页面,
    然后B再根据类型名称调用泛型方法,
    可能如下:
    switch (类型名称)
    {
    case "A":
    方法名<A>(参数)
    break;
    case "B":
    方法名<B>(参数)
    break;
    case "C":
    方法名<C>(参数)
    break;
    }
    现在我想了解的是,有无方法:
    Type T=Type.GetType(类型名称)
    方法名<T>(参数)
      

  4.   

    void MethodA<T>(int i) where T : new()
    {
        T a = Activator.CreateInstance<T>();
    }
      

  5.   

    danjiewu(阿丹) ( )
    总算明白了我的意思,握个手.不知是否有别的变通方法?
      

  6.   

    鎶奣ype绫诲瀷鍋氬弬鏁颁笉鍙互鍚楋紵