创建和关闭WCF客户端的最佳实践,针对异步方法

3

我熟悉使用最佳实践来创建WCF客户端、调用标准方法,然后在完成后关闭或中止客户端,但是我想了解客户端的异步方法。

我有一个管理类,其中包含一些传递事件供消费类附加,以检索异步调用的结果。例如:

internal sealed class CommController
{
    public event GetClientIdEventHandler ClientIdReceived;

    private readonly LocalCommSvcClient _localCommSvcClient = new LocalCommSvcClient();

    public CommController()
    {
        _localCommSvcClient.GetClientIdCompleted += (o, e) => ClientIdReceived(o, e);
    }

    public void GetClientIdAsync()
    {
        _localCommSvcClient.GetClientIdAsync();             
    }
}

但我没有看到客户端何时被关闭和/或处理。我在异步使用方面没有找到关闭WCF客户端的最佳实践。我应该在哪里放置我的.Close()和/或.Abort()调用?


我认为它经历了一个标准的REST请求/响应周期(可能在HTTP上),由于它是无状态的,因此没有必要“关闭”客户端,因为实际上一开始什么都没有打开。虽然我可能完全错了,但我还没有享受到深入研究WCF的真正细节的乐趣。 - Chris Sinclair
1个回答

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接