ASP.NET 5与MVC 6中的新特性
差点忘了提一句,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,这一点对于诊断过程来说很有帮助。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· Open-Sora 2.0 重磅开源!