• 技术文章 >后端开发 >C#.Net教程

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

    青灯夜游青灯夜游2018-10-18 14:21:46转载1433
    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#视频教程

    以上就是C#如何使用Reflect获取dll文件中的类型并调用?的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:博客园,如有侵犯,请联系admin@php.cn删除
    上一篇:怎么判断两个文件是否是同一个文件 (代码) 下一篇:c#之解决百度地图api APP SN校验失败问题(代码实例)

    相关文章推荐

    • php反射类ReflectionClass用法分析_php技巧• php反射效果:基类访问子类数据• python中反射用法实例• PHP反射使用实例和PHP反射API的中文说明

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网