你能否澄清一下,我是否可以使用MVC控制器来实现Restful服务?

时间:2015-12-16 21:55:17

标签: c# .net model-view-controller

我是MVC&的新手Web API。你能否澄清下面的问题?

  1. 是否可以使用MVC控制器创建Restful服务(没有继承apicontroller类)?
  2. 创建Restful服务有哪些方法?
  3. 当&为什么要选择webAPI?

1 个答案:

答案 0 :(得分:1)

我将尝试回答一般意义上的问题(遵循一般性问题),

REST是架构风格,而MVC和Web API是架构模式架构风格是一个概念,而架构模式是一组工具,主要定义为支持但不限于某些架构风格

  1. 话虽如此,但可能使用MVC控制器创建Restful服务,尽管MVC控制器主要不是为了创建Restful服务。实际上,Web API控制器是MVC控制器。所以,从这个意义上说,MVC控制器更为通用。
  2. 使用相同的推理,您可以通过以下几种工具创建Restful服务:
    • WCF:虽然这主要是为了支持基于Web的SOAP消息传递,但是开发了WCF REST来支持制作Restful服务(带有一些开销)
    • MVC:更一般,与Web API有相似之处。您可以查看其他帖子以了解更多信息
    • Web API:你走了!这是专为REST设计的!
    • 我可能不熟悉的其他一些
  3. 因此,当我们想要创建REST服务时,我们选择Web API,因为这个架构模式是专门为此而设计的。如果您使用VS,解决方案的模板已经存在,方便您启动项目。
  4. 目前,MVC和Web API已经在ASP.NET中结合使用,因此您可以在需要时同时使用它们。