C#通过反射创建自定义泛型

这篇文章主要介绍了C#通过反射创建自定义泛型的方法,需要的朋友可以参考下

本文以实例形式讲述了C#通过反射创建自定义泛型的实现方法,分享给大家供大家参考。具体如下:

比如有这样一个泛型:Demo.GenericsSimple 我想要通过反射创建一个Demo.GenericsSimple的实例可以通过下面的格式进行创建:

 System.Reflection.Assembly.GetExecutingAssembly().CreateInstance("命名空间.User`形参数量N[[1形参类型全名,形参类型所在的程 序集名称],[2形参类型全名,形参类型所在的程序集名称],[3形参类型全名,形参类型所在的程序集名称]......N]") 

实例代码如下:

 namespace Demo { public class GenericsSimple where T:class where TT:struct {} class Program { static void Main(string[] args) { var o = System.Reflection.Assembly.GetExecutingAssembly().CreateInstance("Demo.GenericsSimple`2[[System.String, mscorlib],[System.Int32, mscorlib]]"); Console.WriteLine("{0}",o==null?"null":o.GetType().FullName); Console.WriteLine("===end==="); Console.Read(); } } } 

希望本文实例对大家的C#程序设计有所帮助。

以上就是C#通过反射创建自定义泛型的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » 其他教程