为什么WCF有接口?
我想知道我能做到这一点:
我有真正的wcf服务。然后我还有一个模拟wcf服务,返回演示数据。
我可以让它们实现相同的界面并将它们换掉吗? 我该如何做到这一点?
答案 0 :(得分:3)
WCF具有接口,因此您可以从实际逻辑中分离服务合同的结构(即方法,操作合同和数据合同等类),这些逻辑决定了您的服务的作用。
如果您的真实WCF服务和您的演示服务实现了相同的界面。是的,您可以根据您的测试与真实测试的比较来切换两者的逻辑。这是WCF的主要专家之一,它允许您轻松地这样做,因为界面是您创建的服务的骨架。同时允许您轻松改变WCF如何使用该服务的“管道”。
您可以通过在Visual Studio中创建一个WCF项目来实现这一目标,这为您提供了实现该接口的标准接口和服务类,您可以从那里构建它。
答案 1 :(得分:2)
当您针对WCF服务进行编程时,您需要针对接口进行编程而不是实现。
WCF的优势在于您只需更改配置即可更改实施。例如,经典的Web服务,二进制协议,名为pipes ....
您的代码对于所有配置都是相同的。这是可能的,因为您的代码程序针对接口。