ASP.NET MVC5 入门
参考资料《ASP.NET MVC5 高级编程》第5版
第1章 入门
1.1 ASP.NET MVC 简介
ASP.NET MVC是一种构建Web 应用程序的框架,它将一般的MVC(Model-View-Controller)模式应用于ASP.NET 框架。
在分离应用程序的关注点方面(例如,从显示逻辑中分离出数据访问逻辑),MVC是一种强大而简洁的方式。
MVC 将应用程序的用户界面(User InterFace,UI)分为三个主要部分:
- 模型:一组类,描述了要处理的数据以及修改和操作数据的业务规则。
- 视图:定义应用程序用户界面的显示方式。
- 控制器:一组类用来处理来自用户,整个应用程序流以及特定应用程序逻辑的通信。
在ASP.NET MVC 中,MVC 三个主要部分的定义大致如下:
- 模型:通常封装存储在数据库中的数据,以及操作这些数据和执行特定域业务逻辑的代码。
- 视图:动态生成HTML 页面的模版
- 控制器:一个协调视图与模型之间的特殊类。它响应用户输入,与模型进行对话,并决定呈现哪个视图(如果有的话)。在ASP.NET MVC 中,这个类通常以后缀名Controller 表示。
ASP.NET MVC 的上下文是问题域和宿主系统。
ASP.NET MVC 发展历程
- 2009年3月,ASP.NET MVC 1发布
- 2010年3月,ASP.NET MVC 2发布,新的API功能有:支持将大型应用程序划分为域
- ASP.NET MVC 3的主要特征有:支持Razor 视图,支持.NET4 数据注解,支持全局操作过滤器(Global Action Filter)
1.1.1 ASP.NET MVC4 概述
设计ASP.NET MVC的目的是用来创建网站,因此,整个平台的设计目标很明确:响应浏览器的请求,并返回HTML
ASP.NET MVC 4的主要功能包括 Web API
1.Web API 功能:
- 路由: 它按照约定将HTTP 动词映射到控制器操作。这样可以使代码便于阅读,同实鼓励了RESTful 服务设计。
- 模型绑定和验证:与MVC 简化映射输入值(表单域,cookies,URL 参数)到模型值的过程是一样的,Web API 自动把请求值映射到模型。绑定系统具有的良好的扩展性。
- 过滤器:向操作添加行为。
- 基架:可以快速添加一个基于实体类框架模型的Web API 控制器。
- 简单的单无测试:这一点与MVC 很像,Web API 建立在依赖注入和避免全局状态使用的概念之上。
一些新的概念和模型:
- HTTP 编程模型:提供了一个强类型的HTTP 对象模型、HTTP 状态码和容易访问的Headers 等。
- 基于HTTP 动词的动作调度
- 内容协商
- 基于代码的配置
2.显示模式
显示根据浏览器发出的请求,使用约定的方法来选择不同的视图
3.捆绑代码和微小框架
通过合并脚本引用将若干个请求合并成一个请求,从而减少发送到站点的请求数量。
同时也采取各种技术来压缩包大小,比如缩短变量名、删除空格和注释等
1.2 ASP.NET MVC5 概述
ASP.NET MVC5 主要特性:
- One ASP.NET
- ASP.NET Identity
- 特性路由
- 过滤器:向操作添加行为。
- ASP.NET基架
- 身份证过滤器
- 过滤器重写
参考资料《ASP.NET MVC5 高级编程》
ASP.NET MVC5 入门的更多相关文章
- Asp.Net MVC5入门学习系列③
原文:Asp.Net MVC5入门学习系列③ 添加一个视图(View) 接着上篇的入门系列,上面解说添加一个简单Controller(控制器),这里我们简单的在来添加一个View(视图)来展示我们Co ...
- Asp.Net MVC5入门学习系列②
原文:Asp.Net MVC5入门学习系列② 添加一个Controller(控制器) 因为我们用的是Asp.Net MVC,MVC最终还是一套框架,所以我们还是需要遵循它才能玩下去,或者说是更好的利用 ...
- Asp.Net MVC5入门学习系列①
原文:Asp.Net MVC5入门学习系列① 现在直接开始MVC5的学习系列,学习资源来自Micrsoft. 开始使用Asp.Net MVC 5 打开Visual Studio 2013,然后新建一个 ...
- Asp.Net MVC5入门学习系列⑦
原文:Asp.Net MVC5入门学习系列⑦ 接着上篇结尾所说,如果开发中刚才遇到Model需要添加或者减少字段/属性的话,但是刚好你也利用EF的Code frist通过Model生存的数据库,这时改 ...
- Asp.Net MVC5入门学习系列⑤
原文:Asp.Net MVC5入门学习系列⑤ 检查VS生产的编辑方法和编辑窗体 前面我们一步使用强类型,然后创建Controller(控制器)的时候,VS默认已经给我们把CURD都简单的实现了.这篇的 ...
- Asp.Net MVC5入门学习系列⑥
原文:Asp.Net MVC5入门学习系列⑥ 接着上次的篇幅,我们这篇手动来写一个查询的流程代码! 搜索/查询 流程功能的实现 那现在要做搜索(查询)功能我们第一步应该做什么呢!第一次是不是我们应该去 ...
- Asp.Net MVC5入门学习系列④
原文:Asp.Net MVC5入门学习系列④ 添加Model且简单的使用EF 对于EF(EntityFramework)不了解的朋友可以去百度文科或者在园子里搜一些简资源看下,假如和我一样知道EF的概 ...
- ASP.NET MVC5入门1之项目创建
本博文参考ASP.NET MVC5入门指南,下载链接: ASP.NET_MVC5_入门指南 1.创建项目 文件 --> 新建 --> 项目 Visual C# --> Web --& ...
- ASP.NET + MVC5 入门完整教程八 -—-- 一个完整的应用程序(上)
https://blog.csdn.net/qq_21419015/article/details/80509513 SportsStore 1.开始创建Visual Studio 解决方案和项目这里 ...
- ASP.NET + MVC5 入门完整教程七 -—-- MVC基本工具(上)
https://blog.csdn.net/qq_21419015/article/details/80474956 这里主要介绍三类工具之一的 依赖项注入(DI)容器,其他两类 单元测试框架和模仿工 ...
随机推荐
- Undefined symbols for architecture i386:"_OBJC_CLASS_$_xx", referenced from: 解决方法
多个人共同操作同一个项目或拷贝项目时,经常会出现类似这样的问题: Undefined symbols for architecture i386: "_OBJC_CLASS_$_xx文件名& ...
- JSON.stringify()的使用--将string转换成json
===========================================================1. ====JSON.stringify()================== ...
- SQL锁表解决并发性
在数据库开发过程中,不得不考虑并发性的问题,因为很有可能当别人正在更新表中记录时,你又从该表中读数据,那你读出来的数据有可能就不是你希望得到的数据.可以说有些数据同时只能有一个事物去更新,否则最终显示 ...
- Export excel file using web API
使用MVC controller输出excel的例子,自不待言,例子满天飞. 由于本项目使用的是Asp.net MVC API,因此在本项目使用API,实现了文件下载功能.代码的原理很简单,基本上是老 ...
- C#实现程序自重启
方法1: System.Diagnostics.Process.Start(System.Reflection.Assembly.GetExecutingAssembly().Location); / ...
- AOP切入点注解报错
开始学习AOP,出现如下的错误,最后发现是JDK与aspectj,aspectjweaver版本问题造成的.之后改成最新版本,代码运行正常. 利用这些特性可以进行代码的插入,比如权限,缓存结合mecm ...
- regulator
http://blog.sina.com.cn/s/blog_5e99b41e0101a3ng.html http://blog.sina.com.cn/s/blog_694348b00100n3ip ...
- MFC获取文本框字符串
//方法1:使用用GetDlgItem,得到控件对像, 再GetWindowText //GetDlgItem(IDC_EDIT1)->GetWindowText() //方法2:控件与对应类关 ...
- 函数变量作用域(python)
收集参数:该参数个数不确定 >>> def test(*params): print('参数的长度是:', len(params)); print('第二个参数是:', params ...
- 关于conversation generation的论文笔记
对话模型此前的研究大致有三个方向:基于规则.基于信息检索.基于机器翻译.基于规则的对话系统,顾名思义,依赖于人们周密设计的规则,对话内容限制在特定领域下,实际应用如智能客服,智能场馆预定系统.基于信息 ...