如何实例化未知类型的泛型类?

定义了一个泛型类,某个属性的类型为泛型:


  [DataContract]    public class M_ExportExcel<T>
    {
        [DataMember]        public List<M_ExtjsColumn> ColumnModel { get; set; }

        [DataMember]        public String FileName { get; set; }

        [DataMember]        public String Title { get; set; }

        [DataMember]        public String ModelName { get; set; }


        [DataMember]        public T RuntimeModel { get; set; }

        
    }


 

T 是在运行时通过反射才能知道是什么类型, 例如:

Assembly assemblyMd = Assembly.Load("Models");
Type typeRun = assemblyMd.GetType("Models.M_Charge");

 

我要怎么实例化?

M_ExportExcel<T> objM_ExportExcel = new M_ExportExcel<T>();


牛魔王的故事
浏览 793回答 1
1回答

尚方宝剑之说

var&nbsp;instance&nbsp;=&nbsp;Activator.CreateInstance(typeof(M_ExportExcel<>).MakeGenericType(typeRun));注意你获得的instance是一个object。
打开App,查看更多内容
随时随地看视频慕课网APP