被别人提问记录

  • 大家好,我是你们的好朋友程序猿:铭文
    • 一.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区别相关推荐

  1. 【转】.net异步性能测试(包括ASP.NET MVC WebAPI异步方法)

    很久没有写博客了,今年做的产品公司这两天刚刚开了发布会,稍微清闲下来,想想我们做的产品还有没有性能优化空间,于是想到了.Net的异步可以优化性能,但到底能够提升多大的比例呢?恰好有一个朋友正在做各种语 ...

  2. Mvc Webapi+Fiddler调试 (WebAPI 一)

    Mvc Webapi+Fiddler调试 (WebAPI 一) Fiddler Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有 ...

  3. 谈 三层结构与MVC模式的区别

    谈 三层结构与MVC模式的区别 在CSDN和园子里有朋友谈到三层与MVC的区别,以前也有人抛出这个问题,本人对来公司面试的朋友也偶乐会提这方面的问题.     那么我也来讲讲我对这两者的理解吧.    ...

  4. 浅析三层架构与MVC模式的区别

    浅析三层架构与MVC模式的区别 三层架构介绍: (点击链接即可见三层架构) MVC模式介绍: MVC全名是Model ViewController,是模型(model)-视图(view)-控制器(co ...

  5. 转载CSDN (MVC WebAPI 三层分布式框架开发)

    前言:SOA(面向服务的架构)是目前企业应用开发过程中普遍采用的技术,基于MVC WebAPI三层分布式框架开发,以此适用于企业信息系统的业务处理,是本文论述的重点.此外,插件技术的应用,富客户端JQ ...

  6. ASP.NET Core MVC/WebAPi如何构建路由?

    前言 本节我们来讲讲ASP.NET Core中的路由,在讲路由之前我们首先回顾下之前所讲在ASP.NET Core中的模型绑定这其中有一个问题是我在项目当中遇见的,我们下面首先来看看这个问题. 回顾A ...

  7. MVC WebAPI 三层分布式框架开发

    转载 CSDN (MVC WebAPI 三层分布式框架开发) 转者述:不深不浅,学习直接底部有源码! 前言:SOA(面向服务的架构)是目前企业应用开发过程中普遍采用的技术,基于MVC WebAPI三层 ...

  8. 我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第二篇)

    在阅读这篇文章的时候,我想你已经看完第一篇文章啦·也有可能跟我一样,现在正在使用它Asp.net WebAPI为我们干活儿.可能是服务分页查询接口,也可能是其它操作,遇到了一些小问题.有问题,那咱就来 ...

  9. android和web api接口,WebService和Webapi的区别

    下面的句子 是直接百度翻译出来的,对于英文好的朋友可点击下面网址 WebService特点 它是基于SOAP格式的肥皂和返回数据. 它只支持HTTP协议. 它不是开源的,但是可以被任何理解的客户所消耗 ...

最新文章

  1. python【蓝桥杯vip练习题库】ALGO-236大小写转换
  2. DCMTK:测试VR类的compare()运算符
  3. 炸窝Vector简介
  4. java lambda 排序_Java8特性:Lambda表达式之概念篇
  5. servlet3.1
  6. matlab控制图像的边界(margin),subplot的间距(gap)
  7. docker 基本指令
  8. STM32程序的烧录方式 与 ISP一键下载
  9. 1194: 总成绩排序(结构体专题)
  10. [hdu3873] Invade the Mars
  11. 性能课程笔记(五)性能分析思路[转载高楼]
  12. 计算机维护服务蓝图,体验|如何通过服务设计建立品牌感知与品牌认同
  13. Node的数据库编程
  14. 踩坑记-- UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xa6 in position 17: illegal multibyte seque
  15. 关于H3C光模块和华为光模块的型号大全
  16. RTL-8201以太网芯片外围电路
  17. OPC UA JAVA开发笔记(四):数据写入
  18. tabLayout当tab数目较多,一屏无法展示时,按键有时会没有反应
  19. [考研]考研倒计时第10天
  20. Java安装开发环境

热门文章

  1. 大型系统演进缩影(一)
  2. GCN-Graph Convolutional Networks
  3. MQTT协议学习总结
  4. TCP连接中的ACK与ack
  5. macOS虚拟机安装全过程(VMware)
  6. 旗鼓相当的对手【长链剖分】
  7. HTML练习css--制作开心餐厅介绍页面
  8. 3.内置提供的函数式接口
  9. 搜狐要报道英朗和408上市啦
  10. 牛奶布丁,我也会做了-o-