.Net8 AOT有什么新特性
这次.Net 8发布,更新了诸多功能,但从各个编程社区看到大家讨论和交流最多的,还是AOT这个功能。ASP.NET Core也引入AOT的支持,但也不是所有功能都支持,MVC还不支持目前,支持最好的是Web API。
.NET 8 在 AOT 方面新增了以下特性:
支持 macOS 上的 x64 和 Arm64 体系结构:之前,.NET AOT 只支持 Windows 上的 x64 体系结构。在 .NET 8 中,AOT 也支持 macOS 上的 x64 和 Arm64 体系结构。这使得开发人员可以将 AOT 应用程序部署到更广泛的平台。
Linux 上应用程序大小缩减 50%:.NET 8 对 Linux 上的 AOT 进行了改进,使应用程序的大小缩减了 50%。这使得应用程序更容易部署和运行。
对 System.Text.Json 源生成器的增强:.NET 8 对 System.Text.Json 源生成器进行了增强,使其与基于反射的序列化程序不相上下。这使得 AOT 应用程序更易于开发和维护。
具体来说,.NET 8 对 System.Text.Json 源生成器的增强包括:
支持序列化具有 required 和 init 属性的类型。
支持在任意类型种类中嵌套 JsonSerializerContext 声明。
支持在弱类型源生成场景中使用编译器生成的类型或无法形容的类型。
由于编译器生成的类型无法由源生成器显式指定,因此 System.Text.Json 现可在运行时执行最接近的上级解析。此分辨率确定用于序列化值的最合适的超类型。
这些新特性使 .NET AOT 成为开发高性能、可部署到多平台的应用程序的更有效的选择。
更新于:28天前相关文章
- ASP.NET Core 使用Razor code blocks替代@helper
- .NET Core Razor page/MVC 返回json忽略空属性
- MiniAPI参数绑定 服务注入 响应输出使用示例
- ASP.NET Core MVC 添加Area和Route配置
- jwt是什么?.NET Core API如何使用JwtBearer验证
- .NET Core c#使用SkiaSharp压缩裁切图片去除水印
- .Net Core HttpClient读取GB2312网页乱码
- .NET Core c#使用SkiaSharp压缩图片
- .NET Core HttpClient报错The character set provided in ContentType is invalid. Cannot read content as string using an invalid character set.
- .NET attribute 验证两个字段相同
- .NET MVC jquery.validate errorPlacement无效
- .NET Core常用缓存中间件和他们的用法
- .net core webapi RateLimit接口防刷
- .NET Core MVC判断是否是ajax请求
- .NET Core获取请求者真实IP
- .NET MVC ViewBag ViewData Mmodel怎么选择?
- .NET Core MVC 获取UrlReferer
- .NET Core MVC页面输出中文被编码了
- .NET Core读写文件的方法
- .NET Core MD5加密