ChannelFactory可以成为Faulted吗?

时间:2012-12-20 15:23:45

标签: c# wcf wcf-client channelfactory

假设我正在缓存ChannelFactory<T>并使用它来创建频道。这些通道用于对其他服务进行WCF调用,然后(安全地)处理。

我是否需要担心缓存的ChannelFactory出现故障并因此无法创建新频道的情况? 如果是这样,我是否需要将其替换为新的ChannelFactory

对于ChannelFactory出现故障的情况,我还要感谢一个可重复的具体示例。

1 个答案:

答案 0 :(得分:0)

在这种情况下,我不认为你需要担心陷入困境。 ChannelFactory在打开时遇到问题时将其状态更改为Faulted(当您调用Open()方法或创建第一个通道而不调用Open()时会发生什么情况。)

var factory = new ChannelFactory<ITestService>();
try
{
    factory.Open();
}
catch
{
    Console.WriteLine(factory.State);
}