我正在尝试研究WCF Web服务,但我对协议ABC(地址,绑定和合同)有点困惑。我知道每一个是什么,但我看不出它和协议WSDL之间的区别。对我来说,两者都是一样的。
有什么区别?
非常感谢
答案 0 :(得分:5)
WCF服务没有紧密绑定到任何特定协议,因为它是可配置的(松散耦合),服务背后的代码不必担心服务与之交互的协议(TCP / SOAP等)。您正确识别服务的ABC并使解释正确。
当WCF通过Internet和HTTP / SOAP公开时,WSDL(Web服务描述语言)即可发挥作用。它是服务的描述性定义,例如包括复杂类型,消息和方法的类型。
A 地址 - 每个WCF服务都必须有一个地址(服务的位置),它可以是HTTP,TCP,NamedPipe等
B inding - 这定义了如何通过HTTP,TCP,NamedPipe等与WCF服务进行通信
C ontract - 这定义了您的WFC服务实际执行的操作。
您定义了ABC,但通常会自动生成WSDL。 WSDL定义了如何与您的WCF交互,但不定义WCF如何实际工作 - 这是ABC的工作