C#如何使用Reflect获取dll文件中的类型并调用?
16lz
2021-01-22
C#如何使用Reflect获取dll文件中的类型并调用??本篇文章就给大家介绍C#使用Reflect(反射)获取dll文件中的类型并调用的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所助。
使用Reflect(反射)获取dll文件中的类型并调用方法,需引用:
System.Reflection;
1. 使用Reflect(反射)获取dll文件中的类型并调用方法的示例(入门案例)
static void Main(string[] args) { //dll文件路径 string path = @"D:\VS2015Project\001\Computer\bin\Debug\computer.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("该电脑的磁盘驱动器有:\r\n"); foreach (var item in drives) { Console.WriteLine(item); } } }}
3. 反射调用结果:
总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。更多相关教程请访问C#视频教程!
更多相关文章
- 如何从Perl中的目录中分辨文件
- C#中的数据类型是什么?C#中的四种数据类型解释
- c语言简单数据类型有哪些
- 如何判断文件是否存在于Perl中
- 如何用C++读取ini文件中的Section节名
- C++实现逐行读取txt文件中的字符串以及文件文本的复制
- C# 快速手动构建文件服务器
- c语言属于什么类型的编程语言
- asp是什么文件格式