Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ASP.NET MVC 4 新特性简介
Search
Hu Hao
December 05, 2012
Programming
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ASP.NET MVC 4 新特性简介
Hu Hao
December 05, 2012
More Decks by Hu Hao
See All by Hu Hao
我的程序员之路
howiehu
0
290
About REST and RESTful Web API
howiehu
0
120
Other Decks in Programming
See All in Programming
見えないものを探る要求要件定義に必要な基本的思考 / invisible-requirement-thinking
minodriven
15
8.5k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
180
Event is what happens
moro
2
770
AI時代のコードレビューは人に向けるな、仕組みに向けろ
texmeijin
5
3.7k
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.2k
Simple Storage Service(S3) is not simple
iwatsukayura
0
290
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
500
sbt 2.0: takeoff
eed3si9n
0
160
ジョジョの世界をXRで再現する
mofurune
0
160
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
420
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
750
外から家のPCの電源入れたい!をPHPで解決する
kawashimo0
1
130
Featured
See All Featured
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
320
The Cost Of JavaScript in 2023
addyosmani
55
10k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.3k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
370
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
750
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
890
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Google's AI Overviews - The New Search
badams
0
1.6k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
710
Are puppies a ranking factor?
jonoalderson
2
4.1k
Transcript
北京盛安德科技发展有限公司西安第⼀一分公司 技术分享⼈人:胡皓
q 拥抱开源 q 开放源代码 q 引⼊入开源技术 q
改进与优化 q 全新的项目模板 q 新的显示模式(Display Modes)特性 q 配置逻辑移⼊入App_Start⽂文件夹 q Controller可放⼊入MVC⼯工程下的任意⽂文件夹 q 支持对Javascript和CSS进⾏行绑定和压缩 q 新的JavaScript引用⽅方法 q Azure SDK支持 q 新技术,新动⼒力 q ASP.NET Web API q 异步控制器支持(Asynchronous Controller) q Entity Framework 5 q 展望未来 内容概览
ASP.NET MVC 4 官⽅方⽹网站 http://www.asp.net/mvc/mvc4 《Pro ASP.NET
MVC 4》 《Professional ASP.NET MVC 4》 参考资料
Open Source, Open World.
不同于微软以往的做法,2012年5月,微软在MS-‐PL协议框架下将其新⼀一代Web开发平台的四⼤大产品 均予以开源,利用社区的⼒力量促进相关产品的改进和发展。 其中⼀一个典型的例⼦子就是Linux下的Mono平台在微软宣布开源后很短的时间内就支持了ASP.NET MVC4和Entity Framework 5的完整实现,其中对Entity Framework的首次支持可谓是⼀一⼤大进步。
ASP.NET MVC, Web API, Web Pages 源代码: http://aspnetwebstack.codeplex.com/ Entity Framework 源代码: http://entityframework.codeplex.com/ 开放源代码
在ASP.NET MVC 4的项目模板中,微软引⼊入和使用了⼤大量流⾏行开源技术来代替或增强微软自身的实 现,这些技术包括: v 用JQuery, JQuery Mobile及其相关扩展完全取代了微软自身的JavaScript库;
v 引⼊入了Moderniz处理浏览器兼容性问题; v 引⼊入了Knockout来实现富客户端应用; v 引⼊入了Json.NET来增强Json数据处理; v 引⼊入了DotNetOpenAuth来帮助开发⼈人员轻松实现基于OpenID和OAuth的用户登录功能; v 普遍使用了NuGet包管理器来管理项目所使用的全部技术资源,即使是ASP.NET MVC框架本身也 受其管理并能够得到及时的更新。 引⼊入开源技术
Improvements & Optimizations
微软在ASP.NET MVC 4中新增了多种项目模板提供给开发⼈人员使用: 同时还提供了更加现代的默认页面模板,分为普通浏览器和移动设备浏览器两个版本,其中对移动设备的支 持采用了JQuery Mobile和JQuery
Mobile UI: 全新的项目模板
显示模式(特性)是⼀一种基于约定的用于区别处理传统浏览器和移动设备浏览器请求的解决⽅方案。 在ASP.NET MVC 4中,视图引擎会监测HTTP请求所包含的User-‐Agent信息: v 当监测到该请求来自于传统浏览器时,视图引擎会默认选择使用后缀为.cshtml的视图⽂文件;
v 当监测到该请求来自于已知的移动设备浏览器时,视图引擎会选择使用与默认视图⽂文件同名但后缀 为.mobile.cshtml的视图⽂文件。 另外,显示模式还支持自定义扩展,比如在Global.asax⽂文件的Application_Start⽅方法中加⼊入如下代码,便可以 让视图引擎监测到来自iPhone⼿手机的浏览器请求时,返回后缀为.iPhone.cshtml的视图⽂文件: DisplayModeProvider.Instance.Modes.Insert(0, new DefaultDisplayMode("iPhone") { ContextCondition = (context => context.GetOverriddenUserAgent().IndexOf ("iPhone", StringComparison.OrdinalIgnoreCase) >= 0) }); 新的显示模式(Display Modes)特性
为了清理和精简Global.asax⽂文件的Application_Start⽅方法中的代码,ASP.NET MVC 4现在将相关的配置逻辑使 用静态类进⾏行分类并将它们移⼊入了App_Start⽂文件夹,这些⽂文件包括: v AuthConfig.cs:用于配置安全设置,包括OAuth登录站点等。 v BundleConfig.cs:用于注册绑定和压缩信息,⼀一般其中已经内置了默认的绑定信息,比如jQuery、jQueryUI、
jQuery validation、 Modernizr以及默认的CSS引用等。 v FilterConfig.cs:用于注册MVC的过滤器(Filter)信息,⼀一般其中已经包括了默认的HandleErrorAttribute 过 滤器。 v RouteConfig.cs:用于配置MVC路由信息。 v WebApiConfig.cs:用于注册Web API路由信息。 配置逻辑移⼊入App_Start⽂文件夹
现在,ASP.NET MVC 4允许将任何实现了IController接⼝口的Controller⽂文件放置在MVC⼯工程下的任意⽂文件夹内, 便于开发⼈人员组织管理Controller⽂文件,比如将其按照逻辑组进⾏行区分或者将MVC控制器和Web API控制器分开 存放等。 Controller可放⼊入MVC⼯工程下的任意⽂文件夹
ASP.NET MVC 4支持与ASP.NET 4.5相同的绑定和压缩框架,该框架能够绑定多个JavaScript或CSS⽂文件为⼀一个 单独的⽂文件,并对其进⾏行压缩,从⽽而减少页面加载时的⽂文件传输量,减少贷款占用,提升页面加载速度。 此外,通过将绑定和压缩配置信息放⼊入/App_Start/BundleConfig.cs⽂文件,并在视图中使用 @Scripts.Render("...")⽅方法进⾏行加载,从⽽而精简了代码编写量,⽅方便了对此类⽂文件的维护。 支持对Javascript和CSS进⾏行绑定和压缩
与ASP.NET 4.5⼀一样,ASP.NET MVC 4也使用了单独的_reference.js⽂文件来管理JavaScript⽂文件简的智能感知支持, 使得JavaScript脚本代码更加⼲干净整洁。 新的JavaScript引用方法
ASP.NET MVC 4支持最新版本的Azure SDK。 Azure SDK支持
New technologies, new power. Powered by .NET Freamwork 4.5
ASP.NET MVC 4 包含了ASP.NET Web API,这是⼀一个用于创建HTTP服务以便适用⼴广泛且流⾏行的移动设备访问的 新型框架,同时它也是构建REST服务的理想平台。Web API包含以下特性: v
更加符合潮流的HTTP编程模型; v 对路由的全面支持; v 内容协议; v 模型绑定及验证; v 过滤器; v 查询操作; v 对可测试性的该进; v 基于代码的配置; v 经过该进的对依赖注⼊入容器的支持; ASP.NET Web API (1/2)
v 自承载; v 可创建自定义帮助和测试页面; v 监视与诊断; v 资源地址⽣生成; v Web
API项目模板; v 脚⼿手架功能。 具体内容请参考: http://www.asp.net/whitepapers/mvc4-‐release-‐notes#_Toc317096197 ASP.NET Web API (2/2)
ASP.NET MVC 4利用.NET Freamwork 4.5对于异步编程的改进,通过异步Action能够操作Task和 Task<ActionResult>对象。 更多资料:
http://www.asp.net/mvc/tutorials/mvc-‐4/using-‐asynchronous-‐methods-‐in-‐aspnet-‐mvc-‐4 异步控制器支持(Asynchronous Controller)
Entity Framework 5新特性: http://blogs.msdn.com/b/adonet/archive/2012/08/15/ef5-‐released.aspx Entity Framework 5
The Roadmap
v SignalR v 单页应用程序(SPA)模板和⼯工具包 v Windows Azure
Active Directory v Facebook应用 v MVC Mobile模板改进 具体内容请参考: http://aspnetwebstack.codeplex.com/wikipage?title=Roadmap ASP.NET MVC 路线图
The End 以上便是全部内容 谢谢!