public DynamicProxy(DynamicAction action = null) : base(typeof(T))
 {
     this._target        = (T)Activator.CreateInstance(typeof(T));
     this._dynamicAction = action;
 }
 public DynamicProxy(T obj, DynamicAction action = null) : base(typeof(T))
 {
     this._target        = obj;
     this._dynamicAction = action;
 }
 public T CreateProxy(T obj, DynamicAction action = null)
 {
     return((T) new DynamicProxy <T>(obj, action).GetTransparentProxy());
 }