.NET 4.0 中的重大变化

2023-12-10

新 4.0 中有很多关于新功能和类的信息,但也有一些更改可能会影响现有应用程序,例如

  1. Timespan 现在实现了 IFormattable 和旧版本字符串.Format()无效选项将引发异常,而不是调用简单的 ToString()。然而,CLR 团队提供了一个很好的功能,可以通过配置设置启用以前版本的行为 - TimeSpan_LegacyFormatMode 。

    CLR 由内而外

  2. 访问使用 += 或 -= 声明的类内部的事件将导致调用 add/remove 生成​​的返回 void 的访问器。有些代码甚至无法在 4.0 中编译。

    克里斯·伯罗斯博客

  3. CAS 已弃用,要启用它,仍然需要在配置中使用特殊设置 - NetFx40_LegacySecurityPolicy

所以我想知道还有哪些其他更改,是否有可能至少找到初步的更改列表,这些更改将或可能会随着 .NET 4.0 的发布而破坏现有功能?


语言文档团队针对 C# 和 VB 重大更改发布了单独的文档:

VB: http://msdn.microsoft.com/en-us/library/cc714070%28VS.100%29.aspx

C#: http://msdn.microsoft.com/en-us/library/ee855831%28VS.100%29.aspx

我编写了 C# 版本,其中包括 Eric Lippert 提到的协变和逆变破坏性更改,以及 Chris Burrows 讨论的事件更改。关于可选参数、嵌入式互操作类型和方法组类型推断,还有一些重大更改。

Update:

另一份有用的文档(来自 .NET 文档团队):http://msdn.microsoft.com/en-us/library/ee941656%28VS.100%29.aspx

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

.NET 4.0 中的重大变化 的相关文章

随机推荐

  • e.keyCode 不起作用

    我想问你一些对我不起作用的事情 如果你能帮助我的话 Html
  • 在 Inno Setup Run 部分命令中扩展 .NET 路径常量时的错误处理/忽略

    我有一个 NET DLL 可以通过以下方式注册RegAsm NET 3 5 和 NET 4 5 我在我的设置脚本中使用以下代码 Run Filename dotnet40 RegAsm exe Parameters my dll Worki
  • pyspark 与 scala 中的 FPgrowth 计算关联

    Using http spark apache org docs 1 6 1 mllib frequent pattern mining html Python代码 from pyspark mllib fpm import FPGrowt
  • 如何在php中逐行读取

    当我尝试将每一行插入 Oracle 数据库时 我收到一条错误 指出数字无效 但如果文件中只有一行 则可以正常工作 file fopen file text r while there is another line to read in t
  • 如何使 document.querySelector 在 IE6 中工作

    我在一个网站上工作 我得到了一个在 Internet Explorer 6 中不起作用的 JavaScript 函数 我知道 document querySelector selector 只工作在 Internet Explorer 8
  • PHP 的 DOM 和 SimpleXML 扩展之间有什么区别?

    我无法理解为什么 PHP 中需要 2 个 XML 解析器 有人能解释一下这两者之间的区别吗 简而言之 简单XML 适用于简单的 XML 和 或简单的用例 与节点一起使用的 API 有限 例如 无法对接口进行太多编程 所有节点都是同类 元素节
  • Pandas 重叠重采样

    我想对我的时间索引 DataFrame 进行一些重叠的重新采样 例如 gt gt gt df data date 2018 03 09 12 00 00 1 2018 03 09 12 00 01 1 2018 03 09 12 00 02
  • ARM 系统调用作为 C++ 模板

    我需要在 newlib 存根中调用一些系统调用 当前的实现使用 C 宏 随着时间的推移 这些宏变得不可读且看起来很糟糕 我讨厌宏 然而 我使用 C 模板的实现仅适用于一个参数 template
  • PHP应用程序的评论和回复的递归函数

    我很难概念化用于附加对评论的回复 对回复的回复 对回复的回复的回复等的递归函数 这是我的评论表 Which SHOULD渲染时看起来像这样 按照目前的情况 我可以呈现与article id相关的每条评论 不包括那些NOT NULL 当然 c
  • 获取实现某个抽象类的所有类

    我试图获取实现某个抽象类的所有类 我正在尝试使用以下代码来做到这一点 var type typeof BaseViewComponent var types Assembly GetEntryAssembly GetReferencedAs
  • 媒体播放器应该停止以编程方式断开我的 Android 应用程序中的耳机连接

    我在开发媒体播放器应用程序时遇到问题 我希望这样当我从设备上取下耳机时 我的应用程序中的 MediaPlayer 就会暂停 Android 文档建议使用 AUDIO BECOMING NOISY 意图过滤器 在您的清单中设置意图过滤器 然后
  • 使用 CMake 将文件从源目录复制到二进制目录

    我正在尝试在 CLion 上创建一个简单的项目 它使用 CMake 生成 Makefile 来构建项目 或某种项目 我需要的只是每次运行代码时将一些非项目文件 某种资源文件 传输到二进制目录 该文件包含测试数据 应用程序打开它来读取它们 我
  • Python:使用值的 sum() 优雅地合并字典[重复]

    这个问题在这里已经有答案了 我正在尝试合并来自多个服务器的日志 每个日志都是一个元组列表 date count date可能会出现多次 并且我希望生成的字典能够保存来自所有服务器的所有计数的总和 这是我的尝试 例如一些数据 from col
  • 在 UILabel 中查找子字符串的坐标

    我有一个来自服务器的字符串 我正在 UILabel 上显示它 在该字符串中 我正在识别一些特定的子字符串 我想在该子字符串上放置一个按钮 按钮将是 UILabel 的子视图 为此 我需要子字符串坐标 我经历了这个要点但我无法理解它 假设我的
  • 从Android Market查询最新的应用程序版本

    我可以通过代码在 Android Market 中查询我的应用程序的最新版本吗 我想在新版本可用时向用户显示更新通知 相关问题 在市场上更新我的应用程序的过程 Android 上有没有办法自动更新应用程序 Android 市场应用程序更新
  • “./bin/www”在 Express 4.x 中起什么作用?

    我刚刚开始在我的 Node js 应用程序中学习 Express 4 0 我发现它生成了 bin www文件 其中仅写入应用程序服务器和端口设置 而其他所有内容 例如中间件和路由 都在中定义 app js file 但是 我不确定这是什么
  • 使用java和itext生成带有Unicode字符的PDF文档

    我尝试从打印一些附加 Unicode 符号的 itext 示例中改编标准代码 尽管使用的字体支持这些字符 但我没有得到任何结果 最后一个字符 u2609 不会打印到pdf 提前致谢 These examples are written by
  • 垂直于圆锥体的曲面

    我用 OpenGL C 编写一个程序来对圆锥体进行光线追踪 对于我的强度计算 我需要知道表面法线 给定基础半径 高度和中心坐标 如何计算表面法线 我假设您需要在给定表面上的点的情况下找到表面的法线 我进一步假设这是一个圆锥体 其底座朝下 y
  • Firebase云函数对象可能“未定义”

    我在打字稿中有以下代码 并且在线收到此错误 change after data 对象可能是 未定义 import as functions from firebase functions import as admin from fireb
  • .NET 4.0 中的重大变化

    新 4 0 中有很多关于新功能和类的信息 但也有一些更改可能会影响现有应用程序 例如 Timespan 现在实现了 IFormattable 和旧版本字符串 Format 无效选项将引发异常 而不是调用简单的 ToString 然而 CLR