它会消耗掉所有的东西吗? 会抛出异常吗?
最佳答案
您可以在客户端配置中为同一合约和不同地址拥有多个端点,没有问题。
它们需要用唯一的 name=
分隔<endpoint>
上的属性标签。
<client>
<endpoint name="tcpEndpoint"
address="net.tcp://server:8888/SomeService"
binding="netTcpBinding"
contract="IYourService" />
<endpoint name="httpEndpoint"
address="http://server:8777/SomeService"
binding="basicHttpBinding"
contract="IYourService" />
</client>
创建客户端代理时,您需要提供要使用的端点的名称:
YourClient client = new YourClient("netTcpEndpoint");
您不能再只是实例化您的客户端并期望它找到要使用的“该”端点,因为有多个端点(不幸的是,无法将一个端点定义为“默认”端点,如果未指定任何端点,则会使用该端点) .
除此之外 - 我认为应该不会出现任何问题。
关于.net - 当 WCF 客户端为同一合约指定多个端点时会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1888233/