1.新建C#控制台运用程序,工程名为ConsoleApplication2。
2.工程建好后,点击菜单栏的文件按钮,弹出框选择添加->新建项目->类库,项目名为ClassLibrary1
3.在ClassLibrary1的Class1.cs文件中添加静态函数
public static void Hello()
{
Console.WriteLine("Hello Boy!");
}
4.如图所示:
5.点击菜单栏的生成按钮,下拉框中选择生成ClassLibrary1
6.然后系统在ClassLibrary项目的bin下的debug目录会生成ClassLibrary1.dll和ClassLibrary1.pdb,
7.把这两个文件拷贝进ConsoleApplication2项目的bin下的debug目录下
8.ConsoleApplication2项目下的Program.cs文件using System.Reflection,这个是反射类需要用到的命名空间;还要using System.IO,这个是Directory类要用到的命名空间
9.在Main函数中添加代码
Assembly ass = Assembly.LoadFile(Directory.GetCurrentDirectory() + "\\" + "ClassLibrary1.dll");
Type type = ass.GetType("ClassLibrary1.Class1");
MethodInfo method1 = type.GetMethod("Hello");
method1.Invoke(null, null);
Console.ReadKey();
10.如图所示:
11.按F5运行,结果如图:
以上,最简单的一个反射调用dll的demo已成功的完成了。