MVC,WebAPi,WebService区别

大家好,我是你们的好朋友程序猿:铭文

先简单的说下:昨天一位朋友和我唠嗑突然问我一个问题:mvc和webapi的区别是什么。当时我以为问的是webapi和
webservice的区别。mvc和webapi的区别,当时大闹一片空白一脸懵逼。所以我把这个好好整理出来希望可以帮助一些
朋友,理论性的东西在框架搭建的时候也是可以提供很多帮助的,我最近三年多是实现,很多基础的都忘记了,大家一
定要多看看基础呀,真的很重要。

一.MVC和webapi的区别。

第一印象的区别最直观的当时:mvc和webapi的区别在于一个是model 实体,V view 视图,控制器 controller 的写法是一个设计,webapi就是一种数据接口模式。当时我就这样回答了,还说了一些操作。但是这个朋友问了一些说这个内核的区别比如数据的异步等等。但是我感觉这个有点扯。因为webapi可以通过异步的ajax进行数据的交互。同理mvc通过映射的view 视图也可以通过这些异步来进行交互。下面我总结下具体的几个不同:
1.如同上面说的使用不同:mvc主要是建立映射站为了做好基站。视图页面实体,可以紧密的关联。webapi 一般的使用是用来构件http服务。当时朋友就问我为什么必须要有api,当时实在是不知道怎么回答。比如我们前后台分离。webapi作为 Services 已经是公示了。我用 mvc 的 controller 真的有点 舍近求远。这种问法就感觉自己都。。。。
(mvc是建立网站的一种框架,更倾向于返回用户的页面请求,webapi倾向于返回用户数据请求。可以对接app端其他设备端都可以,mvc 的c也可以但是侧重点不同)
2.基于的类不同。这个我们可以通过 创建 controller来看。mvc是直接继承于 system.mvc 的webapi 是基于 system.web.http.api控制器的
3.mvc部署在IIS上,webapi可以不依赖于IIS部署,可以自托管,控制器台等等都可以进行数据的调取部署等等
4.接受参数的方式:webapi可以用get,post,delete,put。mvc 一般就get,post
5.交互的数据形式也不同。webapi都是返回的json数据。mvc可以返回jsonResult,前段可以直接渲染。
6.基于的模式不同。虽然核心都是asp.net,但是api必须using webapi的控制器 就是我上面说到了。然后才继承api控制器。

一.webapi和webservice的区别。

第一印象:webapi是上面说到的http协议的,webservice用的是schema映射作用xml下的soap协议。webapi轻量级的。
通信核心区别:webapi就是我文章里面TCP的交互模式,webservice 就是基于xml的交互协议。说一个最基本的操作不同。你用web api可以通过实体对象可以直接接受数据,webservice 的话就需要定义属性才可以通过实体对象接受数据、或者用C#强类型序列化用字节接受数据也是可以的。
WebService的特征:
1 基于SOAP协议的,数据格式为XML
2 只支持HTTP协议
3 不是开源的
4 只能部署在IIS上
webAPI在第一个大点里面有解释

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一个武术猴子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值