.NET 9.0 发布候选版 1 近日正式推出,标志着这款广受欢迎的开发平台即将迎来重大的更新和改进。经过七个预览版本的测试和迭代,Microsoft 终于为开发者们带来了期待已久的功能和增强。在此次发布中,尽管总体上是一些边际性的新特性和API改进,但这些更新将为开发者在实际应用中提供更多的灵活性和效率。 在本次 .NET 9.0 的更新中,最值得注意的是引入了 ZLibCompressionOptions 和 BrotliCompressionOptions 两个新的压缩选项类。这些新类将允许开发者更精细地控制数据压缩过程,使得数据传输和存储在性能和效率上有了更大的优化空间。ZLibCompressionOptions 类提供了 CompressionStrategy 和 CompressionLevel 两个属性,其中 CompressionLevel 可以设置从 0 到 9 的级别,0 代表不进行压缩,而 BrotliCompressionOptions 类则定义了一个 Quality 属性,设置范围为 0 到 11。
这些新特性的加入,必将推动数据密集型应用程序的性能提升。 在 MAUI 和 Blazor 方面,.NET 9.0 也带来了令人期待的改进。在 MAUI 中,Microsoft.Maui.Controls.Label 组件现在支持文本的两端对齐(Justify),这一功能将使得应用程序的界面布局更为美观,对于需要严谨文本排版的应用场合尤为重要。Blazor 的 InputNumber 组件则允许开发者设置 HTML 的 type 属性,这意味着开发者可以灵活地将其用作范围选择器或文本输入框,从而满足用户界面的需求。 ASP.NET Core 也在这次更新中受益匪浅。在先前版本中引入的依赖注入关键字得到了扩展,使得开发者能够在中间件类中使用已注册的加密服务。
这样一来,在构建现代 Web 应用程序时,可以更灵活地管理依赖关系,提升系统的整体可维护性。此外,WebSocket 连接的改进意味着开发者可以设置 KeepAliveTimeout 属性,来强制断开未能及时响应的连接,从而提高连接的健壮性和可靠性。 .NET SDK 的命令行工具同样得到了增强。例如,dotnet dev-certs https --trust 命令现在可以在 Windows、macOS 和 Linux 平台上使用,这为跨平台开发提供了极大的便利。此外,新的 .NET SDK 命令 dotnet workload history 可以展示 SDK 工作负载安装的变更历史,让开发者更好地管理其开发环境。 另一方面,Entity Framework Core 9.0 的发布虽然没有公布详细的更新说明,但开发者们在 GitHub 上已经发现了多个修复和新特性的迹象。
其中,OnConfiguring() 方法现在可以使用 UseAzureSql() 和 UseAzureSynapse() 来连接云数据库,利用这些云服务的特性。同时,Microsoft 还将默认为 SQL Server 的兼容性级别调整至 150,这意味着开发者需要更加注意与不同 SQL Server 版本间的兼容性。 在安装方面,.NET 9.0 Release Candidate 1 可以通过 Visual Studio 2022 的预览版进行安装,也可以从官方网站上下载独立的安装包。这一灵活的安装方式方便了不同用户根据自身需求进行选择。 展望未来,Microsoft 已经宣布 .NET 9.0 的正式发布日期为 2024 年 11 月 12 日,这标志着 .NET 生态系统将继续快速发展。紧接着将在 10 月推出的 Release Candidate 2,将是最后的准备阶段,开发者们对此充满期待。
总的来说,虽然 .NET 9.0 Release Candidate 1 的更新主要是一些边际性特性,但这些细微的改进将逐渐形成流畅而高效的开发体验。对于开发者来说,这是一次值得关注的重要更新,不仅提升了开发效率,也营造了更加稳定与可靠的开发环境。未来的版本中,随着更多的功能不断加入,.NET 平台的潜力将会得到充分释放,让我们一起期待 .NET 9.0 的正式发布!。