我对WCF和其他Web服务(如asp.net ASMX,.net Remoting)感到困惑,有人可以告诉我与WCF和其他Web服务有何区别,何时应该使用它,谢谢!与WCF和其他Web服务有什么不同?
回答
我认为WCF替代ASMX和远程处理是公平的。 您可以使用ASMX和远程处理以及WCF实现更多功能,但是您拥有更多的功能,并且通常可以更好地控制正在发生的事情。
所以我相信,如果可以的话,你应该使用WCF。
WCF是通信库,它是.NET远程处理和“旧”ASMX Web服务以及这两个库的后继者的超集。
WCF Web服务对WS- *标准提供了更好的支持,并且互操作性问题更少。
基本上,你应该使用WCF,因为.NET Remoting的和ASMX可能被视为legecy(如果我没有记错,一些.NET远程漏洞只固定于WCF和从未在.NET远程本身)
WCF是一个通信堆栈,允许通过HTTP(如ASMX)和TCP(如Remoting)以及命名管道(这实际上是一个机器内跨进程调用),MSMQ以及.NET 3.5 REST公开服务。
它允许这样做,因为它将服务的通信部分从业务逻辑中分离出来。所有你需要做的就是用合适的契约属性([SeriviceContract],[OperationContract]和[DataContract]装饰你的服务类,方法和DTO。)
这有一个能够写一次服务的好处,并允许许多不同类型的客户端使用相同的服务(即Java客户端可以使用HTTP,.NET客户端可以使用TCP,传统可以使用MSMQ等)。
WCF仍然会允许您使用每个传输的所有功能,包括安全性,事务处理,可靠的消息传递等,但是您需要谨慎使用。并非所有功能都适用于所有传输,您需要相应地进行设计。 WCF允许您在合同中指定哪些功能是必需的。这样可以防止somone尝试以不支持所需功能集的方式公开您的服务(即,如果您的服务需要事务处理,则WCF运行时将不允许通过基本HTTP端点访问该服务)。
WCF也是可扩展通过自定义行为(这影响WCF运行时是如何工作的)和自定义渠道(控制服务如何WCF与外界沟通。)
WCF有一个学习曲线相比, ASMX,但ABSOLUTLY的好处在于减轻这种学习曲线。
希望有所帮助。
- 1. Web服务和WCF有什么不同? Arent他们是一样的吗?
- 2. WCF Web服务正在观看其他WCF Web服务
- 3. Rest Web Service和其他支持wcf服务之间有什么区别?
- 4. 其他Web服务同步
- 5. Apache和Mongrel /其他Web服务器不是ISS有什么区别?
- 6. WCF web服务和java web服务
- 7. 返回其他服务的WCF服务
- 8. Asp.Net Web API和WCF服务有什么区别?
- 9. 使用basicHttp与ASMX Web服务进行wcf服务有什么优势
- 10. REST服务与其他服务的区别是什么
- 11. 与屏幕浏览和使用web服务混搭有什么不同
- 12. 为什么我的WCF Web服务有两个不同的SOAP绑定?
- 13. “Web服务”和“Web服务”有什么区别?
- 14. 与调用其他Web服务的Web服务有任何冲突吗?
- 15. WCF服务与Web服务和REST服务的区别
- 16. ASP.NET Web服务与WCF服务
- 17. WCF REST服务 - 传递不在合同中的其他参数
- 18. 什么是Windows服务?它们与其他.NET应用程序有什么不同?
- 19. DDD服务和WCF服务有什么区别?
- 20. ado.net数据服务和WCF数据服务有什么区别?
- 21. WCF和RIA服务域服务类有什么区别?
- 22. WCF Web服务和客户
- 23. JSON和WCF Web服务
- 24. WCF服务调用异步其他WCF服务
- 25. 什么是Azure和.NET服务?与WCF服务有任何关联吗?
- 26. 的Android和.NET Web服务带有OUT KSoap2和其他jar库
- 27. WCF Web服务
- 28. 从其他PC和Unix讲WCF windows服务的最佳方式是什么?
- 29. Web服务与WCF - 消费时的不同对象
- 30. 流利的API与其他API有什么不同?
在WCF中,DataContractSerializer可以访问非公共成员,因此它需要完全信任,而XML序列化器(在Web服务中)则不需要。由于完全可信的代码访问机器上的所有资源,因此应谨慎使用。 – Adeel 2010-01-29 10:30:40