猿问

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

[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>();


莫回无
浏览 362回答 2
2回答

心有法竹

var&nbsp;instance&nbsp;=&nbsp;Activator.CreateInstance(typeof(M_ExportExcel<>).MakeGenericType(typeRun));注意你获得的instance是一个object。

白板的微信

instanceM_ExportExcel.GetType().GetProperty("RuntimeModel").GetValue(saa,null);
随时随地看视频慕课网APP
我要回答