如何避免引发 AddressAlreadyInUseException? [英] How can I avoid raising AddressAlreadyInUseException?

查看:26
本文介绍了如何避免引发 AddressAlreadyInUseException?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在运行 WCF 服务,如果地址为 ..err .. 已在使用中,则调用 ServiceHost 的 Open() 方法将引发 AddressAlreadyInUseException !

I'm running a WCF service, and calling ServiceHost's Open() method will raise an AddressAlreadyInUseException if the adress is ..err .. already in use !

有没有办法在不引发异常的情况下测试地址是否可用?

Is there a way to test whether the address is available without raising an exception?

推荐答案

ServiceHost 使用的地址在 ServiceHost.BaseAddresses.在拨打电话之前,您可能会在那里查看.

The addresses being used by the ServiceHost are listed in ServiceHost.BaseAddresses. You could potentially check there, prior to making your call.

或者,尝试打开服务,并优雅地捕获和处理 AddressAlreadyInUseException.如果您收到它,就知道它正在使用中,您可以继续进行次要逻辑.

Alternatively, just try to open the service, and catch and handle the AddressAlreadyInUseException gracefully. If you receive that, you know it's in use, and you can move on to your secondary logic.

这篇关于如何避免引发 AddressAlreadyInUseException?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆