sto usando Castello DynamicProxy ei miei ViewModels sono un proxy, qualcosa di simile:Ottenere tipo sottostante di un oggetto proxy
namespace MyApplication.ViewModels { public class MyViewModel : BaseViewModel, IMyViewModel { } }
un proxy del mio ViewModel assomiglia a questo, però:
{Nome = "IRootViewModelProxyffecb133f590422098ca7c0ac13b8f98" FullName = "IRootViewModelProxyffecb133f590422098ca7c0ac13b8f98"}
voglio ottenere il tipo reale o dello spazio dei nomi del tipo effettivo che viene inoltrata. C'è un modo per fare questo? Voglio qualcosa che restituisca il tipo MyApplication.ViewModels.MyViewModel. Se sto usando la classe concreata come proxy, BaseType restituisce la classe effettiva che viene sottoposta a proxy, ma quando si utilizza l'interfaccia, BaseType restituisce System.Object.
Sì, questa è la strada da percorrere. Si noti tuttavia che DynProxyGetTarget() può restituire null, se il proxy non ha una destinazione. –