asp.net-mvc - 调用 mvc Controller 方法和 WCF WEB API Rest 服务调用有什么区别?

标签 asp.net-mvc wcf web-services wcf-web-api

调用 mvc Controller 方法和 WCF WEB API Rest 服务调用有什么区别?

我可以创建一个 mvc Controller post 方法,它允许我执行我需要的任何代码。

我还可以使用 MVC 创建 WCF Web API REST 服务。

这两种访问数据的方法有什么区别?

更具体地说,在这种情况下使用 WCF 的优势是什么?

最佳答案

WCF Web API 开箱即用地处理 XML 和 JSON,而在使用 MVC 时,您必须“手动”创建 XML 和 JSON(阅读:使用序列化程序)——这只是 WCF Web API 优于 MVC 的好处之一.

另一个是 WCF Web API 提供的分离级别,例如实现您的服务逻辑与内容协商。

然而,您可以轻松使用 IoC 容器并对使用 WCF Web API 创建的 API 进行单元测试。

WCF Web API 主要是为了构建 ReSTful API 而创建的,而 MVC 也只允许它创建它们 - 因此使用 WCF Web API,您会觉得创建 ReST API 会更舒服。

如果您打算从头开始作为 Web (ReST) Api 的项目,则应该从 WCF Web API 开始。

如果您打算从一个也提供 ReSTful 服务的网站开始,您应该建议使用 MVC。

您还应该关注 this tweet来自格伦·布洛克。

关于asp.net-mvc - 调用 mvc Controller 方法和 WCF WEB API Rest 服务调用有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8068859/

相关文章:

web-services - 如何从服务器端模拟复杂的 REST 调用?

java - RESTLet 2.0.9 - 有关多个 @Get 和 @Post 注释的查询?

asp.net-mvc - 将选定值从单选按钮传递到 MVC 中的 Controller

C# WCF插件设计与实现

silverlight - 契约(Contract)需要双工,但绑定(bind) 'BasicHttpBinding' 不支持或未正确配置以支持它

WCF Web API 安全

web-services - Delphi soap (httprio) 忽略证书验证

asp.net - 如何使用 ASP.Net/MVC 5/EF 编写拍卖网站代码

asp.net-mvc - 检查所有 Controller 的 session ?

javascript - jquery focusout 部分 View 中的文本框 asp.net mvc