【发布时间】:2014-04-23 15:50:04
【问题描述】:
希望是一个简单的 WCF 初学者问题..
我有一个 WCF 通道工厂,返回一个服务代理 TChannel:
// setup connection to server
var endpointAddress = new EndpointAddress(GetAppSetting("Endpoint"));
var tcpBinding = new NetTcpBinding();
channelFactory = new DuplexChannelFactory<IExcelServer>(this, tcpBinding, endpointAddress);
server = channelFactory.CreateChannel();
我想知道此服务代理何时更改状态(故障、关闭等)。我可以在 ChannelFactory 本身上看到事件,但是我不确定这与通道本身是否相同,即使在这里停止服务器进程也不会导致状态转换。
这是一个 CallbackContract 服务,在几乎所有交互中,服务器都在向客户端发送数据。因此,当我从客户端进行服务器调用时,我不能简单地依赖于捕获故障。
我应该从客户端向服务器发送心跳来触发状态更改吗?
【问题讨论】:
标签: c# .net wcf channelfactory