直接实例化对象和用反射来实例化对象

首先新建一个内库项目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());
        }
    }
}
image
posted @ 2009-06-10 17:20  阳光追梦  阅读(1362)  评论(1编辑  收藏  举报
/*快速评论*/ #div_digg { position: fixed; bottom: 10px; right: 15px; border: 2px solid #ECD7B1; padding: 10px; width: 140px; background-color: #fff; border-radius: 5px 5px 5px 5px !important; box-shadow: 0 0 0 1px #5F5A4B, 1px 1px 6px 1px rgba(10, 10, 0, 0.5); } /** 不知道为什么页面加载完成时还读不到div_digg。可能也是动态生成的。 所以这里只能用定时器 不断的读取,当读取到了再给它动态添加快捷按钮 **/ //自定义 定时器[当元素加载完成是执行回调函数] function customTimer(inpId,fn) { if ($(inpId).length) { fn(); } else { var intervalId = setInterval(function () { if ($(inpId).length) { //如果存在了 clearInterval(intervalId); // 则关闭定时器 customTimer(inpId,fn); //执行自身 } }, 100); } } //页面加载完成是执行 $(function () { customTimer("#div_digg", function () { var div_html = "
\ 关注\  | \ 顶部\  | \ 评论\
"; $("#div_digg").append(div_html); //tbCommentBody }); });