【发布时间】:2012-10-16 18:44:10
【问题描述】:
使用 Visual Studio 2012,当我想向现有网站项目添加 Web 服务时,我在“添加新项目”对话框中至少有以下选择:
- Web API 控制器类
- 支持 AJAX 的 WCF 服务
- 启用 Silverlight 的 WCF 服务
- WCF 数据服务
- WCF 服务
- Web Service / ASMX(这是我一直使用到今天的)
(也许还有更多选择,例如作为附加组件、扩展、NuGet 包等提供)。
据我所知,“Web API”是网络服务的最新技术。这应该用于所有新的开发吗?
或者仍然存在应该考虑其他技术中的哪一种的情况?有没有这些技术的比较或一些指导,什么时候使用?
【问题讨论】:
-
了解您作为网络服务消费者的目标可能会有所帮助。虽然详细的回复应该列出目标受众。
-
Web 服务的使用者可能是其他 ASP.NET 应用程序、javascript 代码、.NET windows 应用程序,甚至可能是 java 应用程序。它应该尽可能“可互操作”。
-
那你应该使用WCF,它可以在多个协议下运行同一个服务。
标签: asp.net web-services asp.net-web-api asmx