BT

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

.NET 3.5 SP1正破坏一些应用程序

| 作者 Abel Avram 关注 7 他的粉丝 ,译者 张善友 关注 0 他的粉丝 发布于 2008年10月18日. 估计阅读时间: 3 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。
8月份发布的.NET 3.5 SP1,理论上来说它不应该破坏之前基于2.0, 3.0, 3.5的CLR的应用程序。但是据报告,一些应用程序还是受到影响,其中包括开源项目Castle
 
微软的一名高级项目经理Scott Hanselman写了.NET 3.5 SP1存在的问题。首先他问道“.NET Framework 3.5 SP1会破坏2.0的应用程序吗?”,然后他肯定地回答“几乎肯定不会。”。然后他解释了为什么3.5 SP1不会影响现有的基于CLR 2.0和更高版本的.NET应用程序,他也承认“存在边界个案”。他建议进行内部测试以确保SP1不会破坏任何应用:
可能存在被破坏的功能,因此对所有SP你应该做兼容性测试确保你不会触及边界情况。
今年加入了微软的Castle项目发起人Hamilton Verissimo de Oliveira也抱怨SP1 破坏了Castle。他解释到破坏了什么和怎么样来解决这个问题:
    • 在创建泛型接口/方法的代理时,SP破坏了DynamicProxy 2
    • 引发异常的代码是处理极端边界的个案的地方
    • 被破坏的DynamicProxy,破坏了使用它的.NET应用(Rhino Mocks、Castle Windsor、NHibernate和Moq是我目前想到主要使用它的应用)
    • 我最近确认了这个问题并修改了DynamicProxy的代码,不再使用这些方法“r5323: 禁止调用GetOptional/RequiredCustomModifiers 方法,因此所有的测试(除了一个之外)都通过了”
Hamilton建议:
如果一些开发团队在SP1上运行Castle的测试用例,他们会发现这个问题。Mono通过收集外部测试案例库来测试他们的平台实现。微软也应该这么做,避免对开源软件项目的伤害,许可证不是一个问题。如果不太可能是因为法律问题影响的话,CLR开发团队可以简化同开源软件项目的沟通并尽早得到他们的反馈。
Scott Hanselman承诺在11月份的某个时间会针对.NET 3.5 SP1的补丁包通过Windows Update方式推出。更新这个补丁的时候,当前运行.NET 2.0的电脑都被升级为.NET 3.5 SP1。在此期间,鼓励那些在使用.NET 3.5 SP1过程中发现的问题的人们,把问题提交到微软Connect网站。
 

查看英文原文:.NET 3.5 SP1 Is Breaking Some Applications

评价本文

专业度
风格

您好,朋友!

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

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的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通知我

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

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

讨论

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


找回密码....

Follow

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

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

Like

内容自由定制

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

Notifications

获取更新

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

BT