Microsoft 于 2024 年 8 月 30 日宣布推出 ASP.NET Core OData 9 包3。以下是关于该版本的一些主要信息3:
- 与.NET 8 的一致性:这个新包将 ASP.NET Core 与.NET 8 的 OData 库保持一致,改变了 OData 格式中数据编码的内部细节,使其更符合 OData 规范。
- 放弃.NET Framework 支持:从 OData 8.0.0 版本开始放弃了对旧版.NET Framework 的支持,从此版本开始,将仅支持.NET 8 及更高版本。使用旧版.NET Framework 的开发人员仍然可以使用 OData 库的 7.x 版,这些库在 2025 年 3 月之前仍受到积极支持,届时它们将处于维护模式。
- 新的 JSON 编写器:OData 8 库使用了新的
System.Text.UTF8JsonWriter
来序列化和反序列化 JSON 负载,这个新编写器比旧的JsonWriter
更快且需要更少的内存。新编写器的序列化方式与旧编写器不同,它不会对所有高 ASCII Unicode 字符进行编码,而是输出 Unicode 字符本身,并且输出大写 Unicode 字符。旧编写器会将几乎所有非 ASCII 字符编码为数字,导致有效负载的大小更大、编码过程更慢。 - 依赖注入方式变化:更新后的库使用与.NET 相同的抽象,即
IServiceProvider
。 - 移除旧的实现和标准:新库移除了旧的实现和标准,如 JSONP 格式。
ASP.NET Core OData 9 库作为 NuGet 包分发3。其源代码在 GitHub 上提供,存储库目前有一些未解决的问题3。开发人员可以查看 OData 8 的发行说明来了解更多相关信息3。