używam Castle DynamicProxy i moi ViewModels są proxy, coś takiego:Uzyskanie podstawowej typ obiektu proxy
namespace MyApplication.ViewModels { public class MyViewModel : BaseViewModel, IMyViewModel { } }
proxy mojego viewmodel wygląda tak jakby:
{Nazwa = „IRootViewModelProxyffecb133f590422098ca7c0ac13b8f98” FullName = „IRootViewModelProxyffecb133f590422098ca7c0ac13b8f98”}
Chcę uzyskać rzeczywisty typ lub nazw rzeczywistego typu, który jest zastępowanym. Czy jest jakiś sposób to zrobić? Chcę coś, co zwraca typ MyApplication.ViewModels.MyViewModel. Jeśli używam klasy konkreacji jako proxy, BaseType zwraca rzeczywistą klasę, która jest proxied, ale przy użyciu interfejsu, BaseType zwróci System.Object.
Tak, to jest droga. Zauważ jednak, że DynProxyGetTarget() może zwracać wartość null, jeśli proxy nie ma celu. –