joh*_* Gu 6 asp.net asp.net-mvc asp.net-web-api
我已经使用asp.net MVC大约1.5年了,我很享受它的功能,并且已经部署了许多成功的Web应用程序,但我现在正在阅读asp.net Web API技术.而且,我发现以下内容:
我可以实现我过去使用MVC实现的任何功能; 使用新的Web API并采用更轻量级的方法.
使用Web API比较asp.net MVC更容易开发Web服务.
那么,asp.net Web API将来是否会接管asp.net MVC,或者每种技术都有自己的增长领域,或者我们是否应该考虑在同一个Web应用程序中使用它们?
Jup*_*aol 16
除了@jmoerdyk的答案,我想指出一些事情:
关键是要了解每种技术的目标:
这将是用于创建Web服务的新API,这是传统XML服务和WCF服务的替代方案,因此值得首先指出WEB API与其他Web服务框架之间的主要区别.
Web API和WCF/ASMX服务之间的主要区别在于它不基于SOAP它基于HTTP因此您可以利用所有HTTP功能,例如:
这是Web API的主要目标,当时称为WCF Web API:通过WCF的眼睛停止查看HTTP - 仅作为传递请求的传输协议.相反,它允许我们将其视为真正的应用程序级协议 - 丰富,可互操作,面向资源的协议.Web API的目的是正确使用URI,HTTP头和主体为Web创建HTTP服务,以及希望将HTTP作为其协议和终身朋友的其他人.
有关更多信息,请查看本文:http://www.codeproject.com/Articles/341414/WCF-or-ASP-NET-Web-APIs-My-two-cents-on-the-subjec
因此,基本上可以将Web API与WCF或XML服务进行比较
如果您想知道WCF将会发生什么?
事实上,我们有太多的选择,因此太多混乱.我们该怎么办?我们合并团队!(有点让我们想起LINQ-to-SQL和实体框架,WCF和Ado.Net数据服务以及其他此类示例的时间).因此,WCF团队和ASP.NET团队联合起来,创建了一个新的框架,专注于Web世界的REST /超媒体/ HTTP服务世界,从而产生了ASP.NET Web API.
既然您知道Web API的目标是什么,那么应该更容易说明为什么MVC包含主要呈现视图的附加功能.
您的担忧是基于WEB API 实际上基于MVC的事实,但他们的目标是不同的
另一方面,ASP.NET MVC基础架构优雅地处理HTTP请求和响应,并支持易于创建的控制器,这似乎是创建这种新型服务的正确方法
不,他们并没有真正做同样的事情.
Web API实际上仅用于生成基于REST的API的JSON,XML或其他基于文本的响应.MVC也可以这样做,但新的Web API似乎更容易,特别是在自动内容类型协商时.
Web API不适合用于生成具有视图等的完整或部分HTML页面.
因此,每个人在ASP.Net框架中都有自己的目的,不可能超越另一个.
| 归档时间: |
|
| 查看次数: |
9085 次 |
| 最近记录: |