利用.net反射动态调用指定程序集的中的方法
2012-09-17 14:03
537 查看
每个.net程序集除了代码外都额外包含了元数据。元数据包括了程序集本身的信息,比如版本号,引用了什么程序集,所有类型的信息,包括其方法、属性、字段。使用.net反射,可以在运行时读取这些信息,并且可以动态地调用方法。
通过Assembly.LoadFrom方法返回的Assembly对象,可以读取其中的元数据。其中的GetType会返回一个用于表示指定程序集的type对象(读取程序集中的所有类型用GetTypes会返回一个type对象的数组)。
返回方法信息(公共方法)
MethodInfo mi = T.GetMethod("getList");
根据前面type类型创建一个对象
object o = Activator.CreateInstance(T);
参数
object[] par = new object[] { "E01" };
通过MethodInfo对象的Invoke方法,动态调用此方法,参数o是因为实例方法需要在调用时有一个实例存在.
DataTable dt = (DataTable)mi.Invoke(o, par);
调用返回的数据显示列表中。
示例下载:http://www.cnblogs.com/Files/NetFans/Solution2.rar
本篇文章来源于 站长资讯网 原文链接:http://www.chinahtml.com/0701/aspnet-116822669010203.html
通过Assembly.LoadFrom方法返回的Assembly对象,可以读取其中的元数据。其中的GetType会返回一个用于表示指定程序集的type对象(读取程序集中的所有类型用GetTypes会返回一个type对象的数组)。
返回方法信息(公共方法)
MethodInfo mi = T.GetMethod("getList");
根据前面type类型创建一个对象
object o = Activator.CreateInstance(T);
参数
object[] par = new object[] { "E01" };
通过MethodInfo对象的Invoke方法,动态调用此方法,参数o是因为实例方法需要在调用时有一个实例存在.
DataTable dt = (DataTable)mi.Invoke(o, par);
调用返回的数据显示列表中。
示例下载:http://www.cnblogs.com/Files/NetFans/Solution2.rar
本篇文章来源于 站长资讯网 原文链接:http://www.chinahtml.com/0701/aspnet-116822669010203.html
相关文章推荐
- 利用.net反射动态调用指定程序集的中的方法
- 利用.net反射动态调用指定程序集的中的方法
- 利用.net反射动态调用指定程序集的中的方法
- 利用.net反射动态调用指定程序集的中的方法
- 利用.net反射动态调用指定程序集的中的方法
- 利用反射从程序集dll中动态调用方法
- 利用反射从程序集dll中动态调用方法(附demo下载)
- 利用反射来动态创建实例和调用方法
- 利用反射动态调用多个方法
- 利用反射动态创建实例并调用方法
- 代码演示 .NET 中普通方法的调用、反射调用、动态(Dynamic)调用的区别
- 利用反射——动态调用类中的方法
- 利用反射机制动态调用方法
- C#利用反射动态调用DLL并返回结果,和获取程序集的信息
- 利用反射来动态创建实例和调用方法(上)
- 一个在java运行时利用反射动态调用方法的例子
- .NET利用反射动态获取程序集的实例对象
- C# aspx页面动态加载ascx用户控件 及 利用反射调用其内方法
- C# aspx页面动态加载ascx用户控件 及 利用反射调用其内方法
- C# 如何利用反射来加载程序集,并调用程序集中有关类的方法