Попробуйте этот забавный трюк:
bool fIsTransparentProxy = ((myTransparentObject as MarshalByRefObject) == null);
Когда я попытался преобразовать прозрачный прокси в MarshalByRefObject, он вернул ноль.Я проверил это в VB, так как именно там находятся все мои прокси, но, надеюсь, такое же поведение сохраняется в C #.
Также обратите внимание, что отладчик Visual Studio знает, что есть что, но я не мог понять, какполучить код, который дает те же результаты (при наведении курсора на объект TP в VS отображается System.Runtime.Remoting.Proxies.__TransparentProxy
как тип класса, но это внутренний запечатанный класс).