首先新建一个内库项目CAO.Assemby.MyDLL ,添加一个类MyTest如下:

MyTest.cs

namespace CAO.Assemby.MyDLL
{
    public class MyTest
    {
        public string Test()
        {
            return "老婆我爱你!";
        }
    }
}

 

添加一个控制台程序:CAO.Assemby.Test,并把CAO.Assemby.MyDLL 库内中的CAO.Assemby.MyDLL.dll文件添加

到项目中;

namespace CAO.Assemby.Test
{
    /// <summary>
    /// 直接实例化对象和用反射来实例化对象
    /// </summary>
    class Program
    {
        static void Main(string[] args)
        {
            RefLoad();
           // aa();
           
        }


        /// <summary>
        /// 直接加载程序集
        /// </summary>
        public static void aa()
        {
            MyDLL.MyTest t = new CAO.Assemby.MyDLL.MyTest();
            Console.WriteLine(t.Test());
        }

        /// <summary>
        /// 用反射来实例化对象
        /// </summary>
        public static void RefLoad()
        {
          Assemby.MyDLL.MyTest t = (Assemby.MyDLL.MyTest)System.Reflection.Assembly.Load("CAO.Assemby.MyDLL").
              CreateInstance("CAO.Assemby.MyDLL.MyTest");
          Console.WriteLine(t.Test());
        }
    }
}
直接实例化对象和用反射来实例化对象

相关文章: