如何在不提及端点名称的情况下使用多个绑定WCF服务方法
目前我正在将 BaciHttpBinding 和 WsHttpBindin 用于同一服务。在介绍 BasicHttpBing 之前,我的客户端 Windows 应用程序使用 WsHttpBindin,因此我没有提及端点名称。引入 BasicHttpBinding 后,当客户端要使用所需服务时,我需要提及客户端中端点的名称。我的问题是,我必须更改具有端点名称的所有现有代码。我如何克服这种情况,或者是否有任何方法可以在配置级别设置默认绑定,并且当我没有提供端点名称时它将使用它。
Currently I’m using BaciHttpBinding and WsHttpBindin for same Service. Before introduce the BasicHttpBing, My Client Windows app consuming the WsHttpBindin, so i didn't mention the endpoint name. After introduce the BasicHttpBinding i need to mension the Name of the endpoint in my client when it going to consume the Desired Service. My problem is, I have to change all the existing code with endpoint name. How can i overcome this situation or is there any method which i can set the default binding in config level and it'll use when i didn't supply the endpoint name.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您不能在同一地址上定义多个端点,请为两个绑定分配两个不同的地址。
如果有合同,您可以将地址留空,它将自动指向 mex 端点的地址,该地址用于定义您的元数据。
同样,您可以使用 BindingConfiguration 标记来配置绑定。
You can not define multiple endpoints on same address, assign two different address for both the bindings.
You can leave the address blank in case of contracts and it will automatically points to the address of mex endpoint, which is being used for defining your metadata.
Similarly you can BindingConfiguration tag to configure the bindings.
做这样的事情,我正在使用绑定配置,并且传输模式是流式传输的,并在我的端点中使用此绑定配置
<端点地址=“”绑定=“netTcpBinding”绑定配置=“StreamBinding”
bindingName=""contract="DBSInterface.Common.IFileTransfer">
<身份>
Do something like this, i am using binding configuration and transmode is streamed and using this binding configuration in my endpoints
<endpoint address="" binding="netTcpBinding" bindingConfiguration="StreamBinding"
bindingName="" contract="DBSInterface.Common.IFileTransfer">
<identity>
<dns value="localhost" />
</identity>
</endpoint>