MVC5发展历程,从MVC2谈起
目前,MVC已经发布了5个版本,不包括一些临时的版本,为了更好的了解MVC5,知道MVC的发展历程是非常重要的。本篇随笔主要讲解3个版本的内容及其新特性。
1、MVC 2,发布日期:2010年3月
部分主要特点如下:
- 加入自定义的UI辅助程序
- 客户端和服务端加入特性的模型认证
- 强类型的HTML辅助程序
- 改善的VS开发工具
增强的API功能特点:
- 支持将大型应用域的划分
- 支持异步控制器
- 通过使用HTML.RenderAction渲染部分页面
- 许多新的辅助函数、API和实用工具
2、MVC 3,发布日期:2011年1月
MVC3 的主要特性如下:
- 支持Razor视图引擎
- 支持.NET4数据注解
- 改进了模型验证
- 支持依赖项解析(Dependency Resolution)和全局操作过滤器(Global Action Filter)
- 支持JavaScript,包括非侵入式的Javascript、Jquery和JSON绑定
- 支持NUGet,用于发布软件和管理整个平台的依赖
3、MVC 4
- ASP.NET Web API
- 显示模式
- 绑定和微小框架
- 开始支持开源发布
注意:在MVC4中,使用、App_Start/bundleConfig.cs zhong中列出的默认绑定。如可以从视图代码中删除文件的引用。可以在不更新视图或布局的情况下,添加
添加版本库和CSS文件的升级。在BundleConfig.css中,添加绑定。
public static void RegisterBundles(BundleCollection bundles){bundles.Add(new ScriptBundle("~/bundles/jquery").Include("~/Scripts/jquery-{version}.js"));bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include("~/Scripts/bootstrap.js","~/Scripts/respond.js"));bundles.Add(new StyleBundle("~/Content/css").Include("~/Content/bootstrap.css","~/Content/site.css"));}
在布局视图 Layout.cshtml中添加引用。
@Scripts.Render("~/bundles/jquery")@Scripts.Render("~/bundles/bootstrap")@RenderSection("scripts", required: false)
由于不绑定版本号,自动的更新版本库,不需要手动修改引用。
3、MVC 5 发布日期:2013年10月,同VS2015一同发布
下面列出了主要特性:
- One ASP.NET
项目类型只有ASp.NET,可以通过Nuget添加MVC。
- 新的Web项目体验
- ASP.NET Identity
重写了成员和身份验证系统。
- Bootstrap模板
重新设计默认的模板,将项目模板运行在流行的Bootstrap框架上
- 特殊的路由特性
可以将注解添加到控制器类或操作方法上。
- ASP.NET基架
- 身份验证过滤
新增的身份认证过滤器优先于权限过滤器执行,允许ASP.NET Identity提供的用户申明,以及运行自定义的身份验证逻辑。
- 过滤器重写
以上内容是对MVC 2 至MVC 5 的总结,请批评指正。
转载于:https://www.cnblogs.com/mahuanpeng/p/5340033.html
MVC5发展历程,从MVC2谈起相关推荐
- 回顾知识付费近几年的发展历程,浅谈知识付费项目的发展空间
不知道大家有没有感觉到今年的时间过得特别快,2021年的新年钟声已经敲响了,新的一年你会有什么新的愿望呢?回忆过去的同时,我们也要展望未来. 尽管2020年对于我们大家来说是非常艰难的一年,新冠至今还 ...
- 焦李成教授谈深度神经网络发展历程
来源:西电人工智能学院 摘要:焦李成教授谈深度神经网络发展历程 2018年11月18日下午,计算机科学与技术学部主任.人工智能学院焦李成教授在成都参加了由中国人工智能学会主办的人工智能大讲堂并做特邀报 ...
- 浅谈显 ipqq 发展历程
浅谈显 ipqq 发展历程 [附显 ipqq原理] 声明,本文章未经过疯狂绅士与runjin的同意不得转载. 浅谈IPQQ软件的技术发展轨迹 疯狂绅士.RunJin 摘要:本文先给出了IPQQ的界定, ...
- 浅谈java发展历程以及java特点
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 Java简述: java的发展历程: java的特点: Java的错误观点纠正: 总结: Java简述: java是面向对象 ...
- 从 Salesforce 与 Veeva 合作历程,浅谈垂直型SaaS的初创及发展思路
近日,相关传言称「美国最大客户关系管理SaaS供应商Salesforce中国区宣布解散」,瞬间成为业内探讨热点. 有媒体报道,Salesforce此举并非"退出中国市场",而是将中 ...
- 细说JavaScript异步函数发展历程
2019独角兽企业重金招聘Python工程师标准>>> < The Evolution of Asynchronous JavaScript >外文梳理了JavaScri ...
- 一家创业公司发展历程-真实记录
文章大纲 一.前言 二.来这家公司之前的我 三.介绍我目前在公司的情况 四.公司发展历程与感悟 五.技术部门发展详述 六.总结 一.前言 昨晚就寝时,忽然脑子晃出来了一个东西-关于我职业生涯规划, ...
- 微信是怎样炼成的 微信产品的发展历程
迄今为止,微信月活跃用户接近6亿,称得是每个智能手机用户最常用的应用,人人都说,微信是个伟大的产品.现在微信作为一个平台型的产品,集成了众多丰富的,能给用户带来不同功能和体验的模块和工具,已经成为了腾 ...
- 物联网发展历程,一步步从概念走向了成熟
出门在外,忽然忘记自己是否关闭了房屋的门锁,对于许多有些许强迫症的人而言,在这种情况下若是不回去确认一下,一天的心神都不会安宁.而这时,简单的拿出自己的手机,查看自己家智能门锁的相关信息,就能很明确的 ...
最新文章
- 如何构建一个有效的知识库?
- 深度学习将会变革NLP中的中文分词——TODO 待好好细看
- CSDNmarkdown编辑器直接写代码的小效果(一生愿)
- boost::geometry::detail::tupled_output_has用法的测试程序
- 数据结构-----AVL树的旋转操作
- Linux学习:第二章-Linux安装
- python文件独特行数_python——文件和数据格式化练习题:文件独特行数
- abap 添加alv上的工具栏的按钮_你需要属于自己的PPT工具栏!
- php增加mysql索引_mysql怎么添加索引
- 把配置的jenkins主路径删掉_Jenkins详细教程
- Windows系统备份方法解答
- UART协议及其Verilog实现
- 计算机桌面空白地方鼠标右击没有属性选项,电脑右键没有属性选项_电脑右键没有显卡属性...
- 数据分析全国薪酬分布状况
- 小武与YOLOv3----优图代码
- python 源代码 macd双底 高 低_利用Python实现MACD''顶底背离''形态,并实现自动化交易!...
- IllegalStateException: Failed to introspect annotated methods on class org.springframework.boot.web.
- 前端学习笔记之——使用 Window 对象
- 从消息推送来看,华为、小米做得最好
- cad批量选择相同块_在CAD中怎样批量选择同类型的构件
热门文章
- struts2 global-results
- xtrabackup备份mysql_xtrabackup备份mysql
- 01背包和完全背包 的完整讲解版 包含 一维数组实现 和二维数组实现题目
- python集成开发环境运行快捷键_Python初学者选择集成开发环境必看 python开发
- strongswan 配置文件 /etc/ipsec.conf 速查手册1
- Arcgis javascript那些事儿(十七)——地理编码服务的发布与使用
- Flutter之Windows环境搭建
- netty框架实现websocket达到高并发
- 关于用C#编写ActiveX控件1
- Doris之资源管理