(ICommunicationObject)proxy).State 给出错误“无法在 'System.ServiceModel.ICommunicationObject' 类型的实例上获取字段或调用方法,因为它是远程对象的代理”
我尝试使用 IClientChannel 但仍然遇到相同的错误。这就是我创建工厂的方式
IPositionActions positionProxy;
ChannelFactory<IPositionActions> factory = new ChannelFactory<IPositionActions>(Binding, String);
positionProxy = factory.CreateChannel();
我想访问状态以检查该通道的故障状态 ChannelFactory 的状态是打开的,即使 ClientChannel 不是。所以,我想检查 ClientChannel 的状态,positionProxy。但我无法访问该州。
调试时,我能够得到这样的状态。但是 ServiceChannelProxy 和 System.Runtime.Remoting.Proxies.__TransparentProxy 不可用,因为它们是私有的。
"((System.ServiceModel.Channels.CommunicationObject)(((System.ServiceModel.Channels.ServiceChannelProxy)((((System.Runtime.Remoting.Proxies.__TransparentProxy)(connectionManager.PositionProxy)))._rp)).serviceChannel) )。状态”
如果有任何访问状态的想法,请建议我。
谢谢你。