public static object GetProperty(IProxy proxy, string propertyName, Type propertyType, object refValue) { #if NPDEBUG Console.Write(propertyType.ToString()); #endif bool cancel = false; IInterceptor interceptor = proxy.GetInterceptor(); if (interceptor.Notification != Notification.Disabled) { if (interceptor != null) { interceptor.NotifyPropertyGet(proxy, propertyName, ref refValue, ref cancel); } if (cancel) { return(GetDefaultValue(propertyType)); } if (interceptor != null) { interceptor.NotifyReadProperty(proxy, propertyName, refValue); } } return(refValue); }