使用ChannelFactory和ChannelFactory缓存进行基于任务的异步调用

时间:2014-02-14 19:37:04

标签: wcf wcfserviceclient

我正在开发一个通过WCF使用SOAP服务的项目。最初,我们使用生成的服务引用,因为它很容易上手。这提供了开箱即用的ChannelFactory缓存和基于任务的异步方法,这显然是可取的。

我们最近切换到使用服务接口并实例化我们自己的ChannelFactory。我们将ChannelFactory视为单个对象来缓存它。在缓存ChannelFactory时 - 我被告知ChannelFactory可能会变坏,例如,如果其中一个频道出错。这是一个真正的问题吗?

我的第二个问题是关于使用基于任务的异步调用,例如使用服务引用时生成的异步调用。使用ChannelFactory<T>时如何完成?我了解您可以使用T[OperationContract(AsyncPattern = true)]上的方法进行注释,但这些方法会返回IAsyncResult而不是Task

任何帮助都将不胜感激。

0 个答案:

没有答案