这篇讨论两个话题:
勇哥注:
这个系列借着盘点WCF知识点的时机,顺便验证一下勇哥的一个新想法: 打造一个内网的Halcon视觉处理中心节点。
这个中心节点是运行在全网络中算力最强的机器上,其它若干客户端通过网络以事务请求的方式让中心结点进行计算,
webapi和wcf的比较
(一)webapi的特点
最明显的特点是它是一种资源为导向的通讯方式。
使用标准HTTP动词如GET、POST、PUT、DELETE等,适用于所有的资源的增删改查操作,使得使用变得简单明了。
下面的wcf配置中,有两个终结点,为什么配置成这样呢?
<service name="SMotionHardwareLayer.MotionCardRes.DMC3400A.AxisRealization" behaviorConfiguration="Dmc3000IAxisAPI"> <host> <baseAddresses> <add baseAddress="net.pipe://localhost/Dmc3000IAxisAPI"/> </baseAddresses> </host> <endpoint address="" binding="netNamedPipeBinding" bindingConfiguration="" contract="SMotionHardwareLayer.HardwareLayerService.IAxis"/> <endpoint address="mex" binding="mexNamedPipeBinding" contract="IMetadataExchange"/> </service>
SvcUtil.exe是一个VS命令行工具,该工具位于:C:\Program Files\Microsoft SDKs\Windows\v7.0A\bin 或 C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\一般情况下我们将SvcUtil.exe添加到VS开发工具中方便以后的运用(也可直接使用该命令行工具)。
在学习和测试 WCF 的时候,我通常使用 ChannelFactory 来代替 Client Proxy。
原因是方便,无须创建多个 Project / Class。
当然,在正式开发中还是使用 Client Proxy 要好些,毕竟 ChannelFactory 直接依赖于契约,违背了 SOA 边界隔离的原则。
Powered By Z-BlogPHP 1.7.3
Copyright www.skcircle.com Rights Reserved.