C#如何使用Reflect获取dll文件中的类型并调用??本篇文章就给大家介绍C#使用Reflect(反射)获取dll文件中的类型并调用的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所助。

使用Reflect(反射)获取dll文件中的类型并调用方法,需引用:

System.Reflection;

1. 使用Reflect(反射)获取dll文件中的类型并调用方法的示例(入门案例)

static void Main(string[] args)         {             //dll文件路径             string path = @"D:VS2015Project01ComputerbinDebugcomputer.dll";              //加载dll文件             Assembly asm = Assembly.LoadFile(path);              //获取类             Type type = asm.GetType("Computer.Computer");              //创建该类型的实例             object obj = Activator.CreateInstance(type);              //获取该类的方法             MethodInfo mf = type.GetMethod("ShowDrives");              //调用方法             mf.Invoke(obj, null);              Console.ReadKey();         }

2. 生成类库(computer.dll)的computer.cs文件代码

using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text;  namespace Computer {     public class Computer     {         private DriveInfo[] drives;         public Computer()         {             this.drives = DriveInfo.GetDrives();         }         public void ShowDrives()         {             Console.WriteLine("该电脑的磁盘驱动器有:rn");             foreach (var item in drives)             {                 Console.WriteLine(item);             }         }     } }

3. 反射调用结果:

C#如何使用Reflect获取dll文件中的类型并调用?

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。更多相关教程请访问C#视频教程

标签
DT素材网

DT素材网

219

0

0

( 此人很懒并没有留下什么~~ )