MVC,WebAPi,WebService区别
被别人提问记录
- 大家好,我是你们的好朋友程序猿:铭文
- 一.MVC和webapi的区别。
- 一.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在第一个大点里面有解释
MVC,WebAPi,WebService区别相关推荐
- 【转】.net异步性能测试(包括ASP.NET MVC WebAPI异步方法)
很久没有写博客了,今年做的产品公司这两天刚刚开了发布会,稍微清闲下来,想想我们做的产品还有没有性能优化空间,于是想到了.Net的异步可以优化性能,但到底能够提升多大的比例呢?恰好有一个朋友正在做各种语 ...
- Mvc Webapi+Fiddler调试 (WebAPI 一)
Mvc Webapi+Fiddler调试 (WebAPI 一) Fiddler Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有 ...
- 谈 三层结构与MVC模式的区别
谈 三层结构与MVC模式的区别 在CSDN和园子里有朋友谈到三层与MVC的区别,以前也有人抛出这个问题,本人对来公司面试的朋友也偶乐会提这方面的问题. 那么我也来讲讲我对这两者的理解吧. ...
- 浅析三层架构与MVC模式的区别
浅析三层架构与MVC模式的区别 三层架构介绍: (点击链接即可见三层架构) MVC模式介绍: MVC全名是Model ViewController,是模型(model)-视图(view)-控制器(co ...
- 转载CSDN (MVC WebAPI 三层分布式框架开发)
前言:SOA(面向服务的架构)是目前企业应用开发过程中普遍采用的技术,基于MVC WebAPI三层分布式框架开发,以此适用于企业信息系统的业务处理,是本文论述的重点.此外,插件技术的应用,富客户端JQ ...
- ASP.NET Core MVC/WebAPi如何构建路由?
前言 本节我们来讲讲ASP.NET Core中的路由,在讲路由之前我们首先回顾下之前所讲在ASP.NET Core中的模型绑定这其中有一个问题是我在项目当中遇见的,我们下面首先来看看这个问题. 回顾A ...
- MVC WebAPI 三层分布式框架开发
转载 CSDN (MVC WebAPI 三层分布式框架开发) 转者述:不深不浅,学习直接底部有源码! 前言:SOA(面向服务的架构)是目前企业应用开发过程中普遍采用的技术,基于MVC WebAPI三层 ...
- 我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第二篇)
在阅读这篇文章的时候,我想你已经看完第一篇文章啦·也有可能跟我一样,现在正在使用它Asp.net WebAPI为我们干活儿.可能是服务分页查询接口,也可能是其它操作,遇到了一些小问题.有问题,那咱就来 ...
- android和web api接口,WebService和Webapi的区别
下面的句子 是直接百度翻译出来的,对于英文好的朋友可点击下面网址 WebService特点 它是基于SOAP格式的肥皂和返回数据. 它只支持HTTP协议. 它不是开源的,但是可以被任何理解的客户所消耗 ...
最新文章
- python【蓝桥杯vip练习题库】ALGO-236大小写转换
- DCMTK:测试VR类的compare()运算符
- 炸窝Vector简介
- java lambda 排序_Java8特性:Lambda表达式之概念篇
- servlet3.1
- matlab控制图像的边界(margin),subplot的间距(gap)
- docker 基本指令
- STM32程序的烧录方式 与 ISP一键下载
- 1194: 总成绩排序(结构体专题)
- [hdu3873] Invade the Mars
- 性能课程笔记(五)性能分析思路[转载高楼]
- 计算机维护服务蓝图,体验|如何通过服务设计建立品牌感知与品牌认同
- Node的数据库编程
- 踩坑记-- UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xa6 in position 17: illegal multibyte seque
- 关于H3C光模块和华为光模块的型号大全
- RTL-8201以太网芯片外围电路
- OPC UA JAVA开发笔记(四):数据写入
- tabLayout当tab数目较多,一屏无法展示时,按键有时会没有反应
- [考研]考研倒计时第10天
- Java安装开发环境