BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

ASP.NET 5与MVC 6中的新特性

| 作者 Jonathan Allen 关注 594 他的粉丝 ,译者 邵思华 关注 3 他的粉丝 发布于 2015年7月23日. 估计阅读时间: 2 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

虽然人们的目光都专注于ASP.NET 5与跨平台的执行引擎上,但作为微软推荐的UI与Web Service框架,MVC也引入了多项变更。其中最重要的一点莫过于MVC、Web API与Web Pages三者的统一了。

差点忘了提一句,MVC 6中默认的渲染引擎Razor也将得到更新,以支持C# 6中的新语法。而Razor中的新特性还不只这一点。

在某些情况下,直接在Web页面中嵌入某些JSON数据的方式可能比向服务端发起一次额外请求的方法更合适。在之前的版本中,实现这一点需要编写一些繁琐的映射代码,然后用某种JSON转换器对数据对象进行序列化,并将结果通过view model进行暴露。而在MVC 6中,以上所有的样板代码都可以简化为一句“@Json.Serialize(Model)”。

在实现图片缓存时,同样也会遇到大量样板代码的问题。图片的缓存本身很简单,但要找到某种方式通知浏览器让缓存失效,往往要用到许多繁琐的临时方案。而通过使用全新的Image Tag Helper,只需将asp-file-version这一属性设置为true就可以了,MVC将“自动为图片文件名附加上一个用于清除缓存的版本号”。

Tag Helper框架也得到了一定程度的改进,用户现在可以“将Tag Helper中的服务端属性与Dictionary的属性进行绑定”。服务端属性的存在与否,将使Tag Helper选择性地生效。如果想要了解更多如何编写自定义Tag Helper的内容,请参考Jeff Fritz的文章“开始使用ASP.NET MVC Tag Helper”。

路由token能够让你在类级别编写类似于“[Route("Products/[action]")”这样的表达式,而在MVC 6中,可以在路由名称中使用相同的token,这一点对于诊断过程来说很有帮助。

查看英文原文:New Features for ASP.NET 5 and MVC 6

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

1 by spider spider

tt

Re: 1 by spider spider

11

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

2 讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT