假设我正在缓存ChannelFactory<T>
并使用它来创建频道。这些通道用于对其他服务进行WCF调用,然后(安全地)处理。
我是否需要担心缓存的ChannelFactory
出现故障并因此无法创建新频道的情况?
如果是这样,我是否需要将其替换为新的ChannelFactory
?
对于ChannelFactory
出现故障的情况,我还要感谢一个可重复的具体示例。
答案 0 :(得分:0)
在这种情况下,我不认为你需要担心陷入困境。 ChannelFactory在打开时遇到问题时将其状态更改为Faulted(当您调用Open()方法或创建第一个通道而不调用Open()时会发生什么情况。)
var factory = new ChannelFactory<ITestService>();
try
{
factory.Open();
}
catch
{
Console.WriteLine(factory.State);
}