Pro*_*ofK 3 .net wcf wcf-binding
如何公开WCF服务,以便一个使用wsHttp绑定的客户端和另一个使用netTcp绑定的客户端都可以使用该服务?
mar*_*c_s 12
这是一个配置的东西 - 当你定义你的服务时,你只需要去定义两个端点 - 一个用于wsHttpBinding,另一个用于netTcpBinding.就这么简单!
<system.serviceModel>
<services>
<service name="YourNamespace.MyService">
<endpoint
address="ws"
binding="wsHttpBinding"
contract="YourNamespace.IMyService" />
<endpoint
address="net.tcp://localhost:8787/MyService"
binding="netTcpBinding"
contract="YourNamespace.IMyService" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:8282/" />
</baseAddresses>
</host>
</service>
</services>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)
现在您的服务暴露了两个端点:
wsHttpBindingathttp://localhost:8282/wsnetTcpBindingattcp://localhost:8787/MyService两个端点用于相同的服务,对于相同的服务合同,例如提供相同的功能和服务方法.
WCF中的每个服务端点都必须定义WCF的ABC: