Ejemplo n.º 1
0
        static void Main(string[] args)
        {
            //实例化接口实现类
            var repo = new Repository();
            //动态生成代理
            var repoProxy = EmitGenerator <IRepository> .GenerateProxy(repo);

            //使用代理调用方法
            repoProxy.Add("Hello");
            repoProxy.Add("World");
            repoProxy.Remove("World");
            repoProxy.Update("A,ning", p => p == "World");   //将会抛出列表中不存在项异常



            //var repoGeneric = new RepositoryGeneric<string>();
            //var repoGenProxy = EmitGenerator<IRepositoryGeneric<string>>.GenerateProxy(repoGeneric);
            ////使用代理调用方法
            //repoGenProxy.Add("Hello");
            //repoGenProxy.Add("World");
            //repoGenProxy.Remove("World");
            //repoGenProxy.Update("A,ning", p => p == "World");   //将会抛出列表中不存在项异常



            Console.WriteLine("End...");
            Console.ReadKey();
        }