50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

ASP.NET MVC 2 中的不兼容修改

  • 2010-03-19
  • 本文字数:683 字

    阅读完需:约 2 分钟

前些天 Scott Guthrie 宣布 ASP.NET MVC 2 正式发布了。在带来众多新特性的同时,ASP.NET MVC 2 也包含了一些不兼容的修改。与.NET BCL 类库苛刻的修改规则相比,ASP.NET MVC 的修改则有些烦人。

首先是 IDataErrorInfo ,这个接口一直存在于.NET 中,却没有任何东西指导如何使用它。在 ASP.NET MVC 1 中,只有那些被修改过的属性才会被检查是否合法;而在 2.0 中,所有的属性都会被检查,这大大减少了出错的可能。此外,当验证属性失败时,就不会再验证类了。

Html.Substitute 被用来创建那些不被缓存的片段,由于 MVC 视图引擎的改变,而从新版本中消失了。这意味着所有依赖部分缓存的人,都需要重新考虑他们的设计了。

IValueProvider 取代了被大量使用的 IDictionary 接口。据文档记载“这个改变只会影响那些使用自定义 value provider 或自定义 model binder 的程序”。

辅助方法的返回值不再是一般的字符串,而是 MvcHtmlString 。这是为了支持 ASP.NET 中 HTML 编码模块的新语法。在 ASP 和 ASP.NET 中,开发人员可以使用 <%= expression%> 来混合静态与动态内容,但这样也很容易造成 HTML 注入错误。在 ASP.NET 4 中,开发人员可以使用新语法 <%: expression%> 来保证所有的字符串都被正确的编码为 HTML。如果你不想字符串被编码,则需要让 expression 返回 IHtmlString。

对于 DefaultControllerFactory 的改变,意味着在自定义 Controller Factory 中做出相应的改变。自定义 Controller Factory 通常被用做依赖注入。

最后,“area”这个字符串在 URL 路由中变成了保留字,这是为了支持 MVC 2 中新加入的区域特性。

查看英文原文: ASP.NET MVC 2 Brings Breaking Changes

2010-03-19 03:352136
用户头像

发布了 63 篇内容, 共 27.6 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

WorkPlus高端制造业数字化解决方案—首发集团

BeeWorks

开源 企业 即时通讯 移动开发

Erda 1.1 版本发布|3 大亮点特性最新解读

尔达Erda

开源 云原生 k8s PaaS SaaS

阿里云视频云发布实时高清VVC编码器Ali266,真正开启VVC商用之路

阿里云CloudImagine

阿里云 视频编码 视频处理 编码器 视频云

详解Camtasia的PPT录制功能

淋雨

视频剪辑 Camtasia 录屏软件

大厂面试真题——Netty/IO篇,你能答上来几道?

Java架构师迁哥

区块链去中心化钱包开发|开发去中心化钱包

Geek_23f0c3

钱包系统开发 去中心化交易所系统开发 去中心化钱包 去中心化交易所

泰国Ascend Money用开源软件加快应用交付

BeeWorks

阅读

以两种异步模型应用案例,深度解析Future接口

华为云开发者联盟

Java 模型 异步 FutureTask Future接口

INFRA-JOY微服务治理验证工程实践分享

徐敏

微服务 自动化测试 全链路压测 性能压测

IDEA http client无法解析enviroment file

crazylle

IDEA http client Alibaba Cloud Toolkit

本夕生活小程序定制开发

ALVIS

ElasticJob 3.0.0:打造面向互联网生态和海量任务的分布式调度解决方案

SphereEx

数据库 开源

大数据实战训练营Hbase作业

Clarke

SpringBoot自动配置原理解析

程序员阿杜

spring Boot Starter

女巫面具系统模式开发

ALVIS

兰宝环保 | 新体系“行动计划”中化工制药行业VOCs废气治理要点

叶落便知秋

互联网大厂一手资料,25大专题,500多页,背废你就能吊打面试官

Java架构师迁哥

数据对AI的重要性:采访首席数据官Rick McFarland - LexisNexis Legal & Professional

BeeWorks

阅读

手把手体验远程开发,确实爽

程序员鱼皮

Java Python 软件 大前端 后端

3D地图与3D柱状图联合使用

ThingJS数字孪生引擎

大前端 地图 可视化 数字孪生

WorkPlus高端制造业数字化解决方案—科达洁能

BeeWorks

开源 企业 解决方案 即时通讯

CloudQuery v1.4.1 发布 | 开放「组织架构」模块 API

BinTools图尔兹

数据库 数据安全 OpenAPI 数据库管控

TensorFlow Recommenders: Quickstart

毛显新

深度学习 tensorflow 推荐系统 keras

中易通科技禾禾实验室产品培育田

叶落便知秋

小白必看,通俗易懂的LockSupport

程序猿阿星

Java并发 线程协作 LockSupport 线程间通信

Java程序员必备框架—Spring全家桶的前世今生详细梳理

北游学Java

Java spring

Using side features: feature preprocessing

毛显新

自然语言处理 深度学习 tensorflow 推荐系统 keras

绿森林回收系统小程序开发

ALVIS

剖根问底:Java 不能实现真正泛型的原因是什么?

沉默王二

java

瞥一瞥AI,撩一撩算法

博文视点Broadview

来吧!一文写清前端面试难点及考点

前端依依

面试 大前端 经验总结

ASP.NET MVC 2中的不兼容修改_.NET_Jonathan Allen_InfoQ精选文章