gpt4 book ai didi

c# - 为异步方法创建和关闭 WCF 客户端的最佳实践

转载 作者:行者123 更新时间:2023-11-30 18:39:18 25 4
gpt4 key购买 nike

我熟悉创建 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()?

最佳答案

您需要先打开() 一个客户端,然后才能像使用同步客户端一样发送消息。在不再需要通信之后(至少当您收到响应时),您应该 Close() 它以释放资源。详细信息取决于服务的绑定(bind)和行为配置。参见例如http://msdn.microsoft.com/en-us/library/system.servicemodel.servicebehaviorattribute.instancecontextmode.aspx

关于c# - 为异步方法创建和关闭 WCF 客户端的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10194699/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com