• C# 如何利用反射来加载程序集,并调用程序集中有关类的方法【转】


    假设在C盘根目录下有个Dog的Dll程序集文件,该程序集文件中包含类Dog 该类中有个狗叫几声的方法,如何通过反射来加载这个C:Dog.dll,并且调用Dog类里面的Sound方法呢:

    public class Dog

        public void Sound(int count)

        { Console.WriteLine("叫了{0}声",count); }

    }

    具体如下:

    首先反射主要用到了System.Reflection命名空间,所以程序中一定要引用这个命名空间。

    using System.Reflection;
    写个测试方法如下:

    public void Test()

    {

      string assemblyFilePath= @"C:Dog.dll";

      Assembly ass= Assembly.LoadFile(assemblyFilePath);

      Type t = ass.GetType("Dog",false,false);

      MethodInfo  info = t.GetMethod("Sound");

     object instance = Activator.CreateInstance(t);

     info.Invoke(instance,new object[]{2});//狗叫了两声

    }

  • 相关阅读:
    习题解答chapter-01
    Java-chapter-01 菜鸟初见Java
    ijkdemo
    1027
    avformat_seek_file
    pla
    android1010横屏等
    文件浏览对话框
    智能指针处理---bo
    Js为Dom元素绑定事件须知
  • 原文地址:https://www.cnblogs.com/zhouyunbaosujina/p/3297530.html
Copyright © 2020-2023  润新知