private static void LoggerDynamicProxyTest()
        {
            Console.WriteLine("-------LoggerDynamicProxyTest start-------");
            DynamicProxyFactory <LoggerDynamicProxy> factory = new DynamicProxyFactory <LoggerDynamicProxy>(new DynamicInterfaceImplementor());
            ILogin login = factory.CreateDynamicProxy <ILogin>();

            login.LoginName = "test";
            login.Password  = "******";
            login.TryLogin += login_TryLogin;
            Console.WriteLine("-------LoggerDynamicProxyTest end-------");
            Console.ReadLine();
        }
示例#2
0
        public static object GetInstance(Type t)
        {
            object        ret;
            Func <object> f;

            if (diFuncs.TryGetValue(t, out f))
            {
                ret = f();
            }
            else
            {
                ret = factory.CreateDynamicProxy(t, t);
            }
            return(ret);
        }
示例#3
0
 public TInterface GetProxy <TInterface>(string token = null)
 {
     return(factory.CreateDynamicProxy <TInterface>(this, typeof(TInterface), token));
 }
示例#4
0
 public TInterface GetProxy <TInterface>(object instance)
 {
     return(factory.CreateDynamicProxy <TInterface>(this, instance));
 }