ASP.NET MVC简介

ASP.NET MVC是一种构建web应用程序的框架,它将一般的MVC模式应用于ASP.NET 框架。那么,如何看待asp.net框架和asp.net mvc之间的关系呢?在asp.net 1.0发布时,asp.net和web from被人们看成是同一事物,尽管当时(2002)asp.net已经支持两层抽象,即ui层(web from层,由服务器控件和ViewState等组成);web层(管道程序,提供基本的web堆栈,其中包括组件模块、处理程序和http堆栈等)。

MVC模式简介

    Model-View-Controller,将其应用于web模式中,虽然在显示分离上一定程度的增加了设计的复杂性,但大大增加了其可扩展性。所以,MVC将应用程序的用户界面(UI)分为三个主要部分,注意,MVC指的是一种用户界面模式。MVC模式是处理用户交互的一种方案,它并不处理应用程序关注的其他问题,如数据访问、服务交互等。须知,ASP.NET MVC的上下文是问题域(一个无状态的Web环境)和宿主系统(asp.net)。ASP.NET MVC注重应用MVC模式来提供一个运行在.NET平台上强大Web开发框架,上下文是其强大原因的一部分。

            部分     定义
模型一组类,描述了要处理的数据以及修改和操作数据的业务规则。它是设计人员需要关注的问题域的一些类,这些类通常封装存储在数据库中的数据,即model,以及操作这些数据和执行特定域业务逻辑的代码。这些模型似乎是用来调用封装在DAL层的类的方法。
视图定义应用程序用户界面的显示方式,它是动态生成HTML页面的模板。
控制器一组类,用于处理来自用户、整个应用程序流以及特定应用程序逻辑的通信,即控制器是模型和视图之间的桥梁,相当于用于协调视图和模型之间关系的特殊类。它可响应用户输入,与模型进行对话,并决定呈现哪个视图。

 

 

 

 

 

 

 

本质上,ASP.NET采用了大部分给予MVCd的Web框架所使用的一些基本原则:

约定优于配置                                                         不重复(DRY原则)
尽量保持可插拔性                                                  尽量为开发人员提供帮助,但必须时允许开发人员自由发挥

ASP.NET MVC概述

ASP.NET Web API

设计ASP.NET MVC的目的是用来创建网站,即响应浏览器的请求,并返回HTML。使用MVC模式创建Web服务,这些服务可以返回XML、JSON和其他非HTML格式的数据。ASP.NET Web API,简称Web API,专门用来编写HTTP服务。该框架包括在HTTP服务域修改一些ASP.NET MVC概念,并提供一些新的面向服务的功能。

下面是一些类似于MVCd的Web API功能,它们只适用于HTTP服务:

路由ASP.NET Web API使用同样的路由系统,将URL映射到控制器操作。它按照约定将HTTP动词映射到操作,从而实现将路由融入HTTP服务上下文。
模型绑定和验证和MVC简化映射输入值(表单域、cookies、URL参数等)到模型值的过程一样,Web API自动把HTTP请求映射到模型。
过滤器MVC使用过滤器以便通过特性向操作添加行为。
基架可使用和添加MVC控制器一样的对话来添加新的Web API控制器
简易的单元测试

Web API建立在依赖注入和避免全局状态使用的概念之上。

HTTP编程模型为了更好的处理HTTP请求和响应,提供了y一个强类型d的HTTP对象模型、HTTP状态码和容易访问的headers等。
基于HTTP动词的动作调度

MVC根据操作方法的名称来调度,而Web API则根据HTTP动词自动调度操作之法。

内容协商HTTP支持内容协商系统,即浏览器给出它们的格式响应优先级,服务器用它支持的首选格式做出响应。
基于代码的配置服务器配置是复杂的。WCF采用冗长复杂的配置文件来完成配置,而Web API完全通过代码配置。

 

显示模式显示模式根据浏览器发出的请求,使用j基于约定的方法来选择不同的视图。当浏览器的用户代理指示一台已知的移动设备时,默认的试图引擎首先查找以.Mobile.cshtml结尾的视图。
捆绑和微小框架

ASP.NET MVC支持的捆绑和微小框架与ASP.NET 4.5中包含的框架相同。该框架通过合并脚本引用可以把若干请求合并为一个请求,从而减少发送到站点的请求数量。与此同时,它也采用各种技术来压缩请求大小,如缩短变量名、删除空格和注释等。它也适用于CSS,可以把若干CSS请求打包成一个请求,并压缩CSS请求的大小,使其用最少的字节,产生等价的规则,也采用高级技术(像语义分析)来折叠CSS选择器。

捆绑系统是高度配置的,我们也可以创建包含特定脚本的自定义捆绑,并用单一的URL来引用这些捆绑。
然后在布局站点(_Layout.cshtml)中,通过绑定URL来引用它

安装MVC和创建应用程序
服务器安装MVC:MVC是完全bin部署的,这意味着所有必要的程序集都包含在应用程序的bin目录中。只要服务器上有.NET 4.5,就可以进行安装。

创建新的MVC项目的b步骤备注
ASP.NET Web应用程序
选择模板和添加框架特定的文件夹和核心引用共同起作用,须知,模板和核心引用的选择是可选项,因为任何时候我们都可以添加对任意框架的支持,因为框架文件夹和核心引用s是通过Nuget包添加的。
此时,解决方案包含两个项目:web应用程序;单元测试

创建新的ASP.NET MVC应用程序后,接下来就是了解ASP.NET MVC应用程序的结构。当然,ASP.NET MVC并不是非要这个结构。事实上,那些处理大型应用程序的开发人员通常跨多个项目来分割应用程序。

ASP.NET MVC和约定

默认情况下,ASP.NET MVC应用程序对约定的依赖性很强。这样就避免了开发人员配置和指定一些项,因为这些项可以根据约定来推断。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值