【发布时间】:2009-07-13 22:52:31
【问题描述】:
我有 WCF 服务。我可以毫无问题地返回具体类,但返回对接口的引用会导致以下问题。
发生通信异常 “套接字连接已中止。这可能是由于处理您的消息时出错或远程主机超出接收超时,或底层网络资源问题造成的。本地套接字超时为 '00:00:59.2030000'。”
当我尝试从 WCF 服务获取类的实例时会发生这种情况:
//create the connection
ChannelFactory<IService> _ChannelFactory = new ChannelFactory<IService>(_EndpointName);
IService _ServiceProxy = _ChannelFactory.CreateChannel();
//communication exception thrown here
ITestInterface okcomputer = _ServiceProxy.GetTest();
IService 和 ITestInterface 具有所有正常的 OperationContract 属性等。该服务具有属性:[ServiceBehavior(InstanceContextMode = InstanceContextMode.Single)]
除此之外,类和接口没有什么特别之处。
我觉得从 WCF 接口返回类接口有一些特殊的技巧,否则我不会遇到这个问题.. 有什么技巧?
【问题讨论】: