我熟悉使用最佳实践来创建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()调用?