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)容器,其他两类 单元测试框架和模仿工 ...
随机推荐
- [ActionScript 3.0] AS3 用于拖动对象时跟随鼠标的缓动效果
package com.fylibs.components.effects { import flash.display.DisplayObject; import flash.events.Even ...
- 无法重新组织表 "ty_wf_ex_local_process_info" 的索引 "idx_prc_act_id" (分区 1),因为已禁用页级锁定。
无法重新组织表 "ty_wf_ex_local_process_info" 的索引 "idx_prc_act_id" (分区 1),因为已禁用页级锁定. ALT ...
- LeetCode 101. Symmetric Tree
Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center). For e ...
- (easy)LeetCode 232.Implement Queue using Stacks
Implement the following operations of a queue using stacks. push(x) -- Push element x to the back of ...
- bash 学习笔记
shell:能够操作应用程序的接口就称为shell. Linux由C编写的. TAB键的使用 alias:设置别名
- (转)直接拿来用!最火的iOS开源项目(二)
“每一次的改变总意味着新的开始.”这句话用在iOS上可谓是再合适不过的了.GitHub上的iOS开源项目数不胜数,iOS每一次的改变,总会引发iOS开源项目的演变,从iOS 1.x到如今的iOS 7, ...
- jBox 弹出窗口中焦点设置问题
jBox 是一个不错的组件库,可以用来比较简单地弹出窗口. 我希望在 jBox 弹出窗口之后,自动将焦点设置到子窗口的某个输入框中,可是发现并不容易. 在 jBox 2.3 中,提供了如下的增强. ...
- 解决eclipse中出现Resource is out of sync with the file system问题
解决eclipse中出现Resource is out of sync with the file system问题 . 分类: 嵌入式开发平台和环境相关 2011-12-27 16:18 4872人 ...
- tomcat, jdk, eclipse, ant的安装,设置及常见问题
1.tomcat 安装: 安装版:在官方下载tomcat的安装版,根据提示一步步操作,很简单的 解压版:在官方下载tomcat的解压版,放到要安装的目录中解压版即可 同以前的找到设置环境变量的地方. ...
- Deviceone:站在移动互联时代的十字路口上
最近总能看到类似“App已死,服务永生”.“App必死,web永生” .“App已死,微信建站已生”这样的文章.不晓得这些网络写手到底是想代表某些公司的立场.还是想要表达怎么样的一个情结,文章中语气都 ...