前言

2024年2月25日,微软正式推出 .NET 10 预览版 1,标志着这一跨平台开发框架迈入新里程碑。

本次更新聚焦 JIT 编译器优化、运行时性能提升和跨平台开发体验增强,同时引入多项开发者期待的功能改进。

无论是服务端应用、移动开发,还是桌面程序,.NET 10 都展现了强大的技术演进潜力。

可以下载体验

https://dotnet.microsoft.com/zh-cn/download/dotnet/10.0

核心功能更新

1、证书与安全增强

支持通过 非 SHA-1 指纹(如 SHA-256) 查找证书,提升安全性。

新增在 ASCII/UTF-8 编码数据中直接定位 PEM 格式证书 的能力。

2、时间与数据处理优化

ISOWeek 类型新增对 DateOnly 的重载方法,简化日期计算。

TimeSpan.FromMilliseconds 新增单参数重载,减少冗余代码。

3、字符串与集合改进

字符串比较支持 数值排序(如 "file10" 排在 "file2" 之后)。

OrderedDictionary<TKey, TValue> 新增 TryAdd 和 TryGetValue 方法,增强健壮性。

4、性能突破

ZipArchive 实现内存与性能优化,减少压缩解压开销。

运行时支持值类型数组的栈分配,降低GC压力。

运行时与编译器

  • JIT 编译器进化:数组接口方法去虚拟化,提升执行效率。
  • 硬件加速:新增对 AVX10.2 指令集的支持,强化向量计算能力。
  • SDK 精简:移除框架默认包引用,降低项目依赖冗余。

语言特性升级

1、C# 新特性

nameof 支持泛型类型参数,增强元数据表达。

隐式 Span 转换简化内存操作代码。

实验性功能:允许在数据段中直接嵌入字符串字面量。

2、F# 与 Visual Basic

F# 标准库与编译器服务同步更新。

VB 新增 unmanaged 泛型约束,支持更安全的非托管类型操作。

跨平台开发支持

1、ASP.NET Core & Blazor

原生支持 OpenAPI 3.1,可生成 YAML 格式文档。

ProducesResponseType 添加响应描述,提升API可读性。

Blazor 组件支持路由语法高亮,优化开发体验。

2、移动与桌面开发

.NET MAUI:重点优化 iOS/Mac Catalyst 的 CollectionView 性能。

Android 开发:支持 Android 16 Beta,默认启用 marshal 方法,构建效率提升。

iOS/macOS:默认启用 Trimmer 警告,减少未使用代码体积。

3、Windows 生态

Windows Forms:重构剪贴板API,弃用旧方法并提供更安全的替代方案。

WPF:持续质量改进,提升稳定性。

数据与工具链

  • EF Core 8:新增 LeftJoin 操作符,ExecuteUpdateAsync 支持常规 Lambda 表达式。
  • 容器镜像:基于 Ubuntu 24.04 和 Debian 13 构建,提供更轻量的 Chiseled 镜像。

相关链接

GitHub:https://github.com/dotnet

.NET 10 SDK: https://dotnet.microsoft.com/zh-cn/download/dotnet/10.0

Visual Studio 2022 预览版: https://visualstudio.microsoft.com/zh-hans/vs/preview/#download-preview

总结

.NET 10 Preview 1 的发布,展现了微软在性能优化、跨平台一致性和开发者体验上的持续投入。

从硬件级指令加速到剪贴板API重构,从字符串处理到容器镜像升级,每一项改进都直击开发痛点。

对于企业级应用开发者而言,本次更新不仅意味着更高效的代码执行,更预示着 .NET 生态在云原生与AI时代的强大竞争力。

大家可以下载体验,探索新特性在项目中的落地可能性。

最后

如果你觉得这篇文章对你有帮助,不妨点个赞支持一下!你的支持是我继续分享知识的动力。如果有任何疑问或需要进一步的帮助,欢迎随时留言。

也可以加入微信公众号[DotNet技术匠] 社区,与其他热爱技术的同行一起交流心得,共同成长!优秀是一种习惯,欢迎大家留言学习!

.NET 10 首个预览版发布,跨平台开发与性能全面提升的更多相关文章

  1. Visual Studio 2015 预览版 - 支持跨平台开发Android/iOS应用程序(内置安卓模拟器)

    微软最近的惊人举动真多,对普通消费者Office 移动版宣布免费,对开发者也发布了完全免费的 VS2013 社区版! 不仅如此,就连 .Net 开发框架环境也竟然「开源」并且跨平台支持 Mac 及 L ...

  2. Windows 10简体中文最新预览版Build 9926

    Windows 10 消费者预览版全新特性: • 全新的开始菜单Win 10的开始菜单产生了较大改变,磁贴界面在原有磁贴概念的基础上进行了大幅度的调整,新的磁贴界面开始支持纵向滚动,并可以利用开始按钮 ...

  3. PHP专业开发IDE——Zend Studio 10.5预览版发布

    Zend Studio是新一代的PHP IDE,高效的开发和维护PHP代码是它的核心.Zend公司目前已发布了Zend Studio 10.5预览版,预览版中提高了快速响应能力和时时误差检查.因此使用 ...

  4. sql server 2014预览版发布

    MSDN发布sql server2014预览版,如下图: SQL Server 2014新特性: 微软SQL Server部门主管Eron Kelly介绍,通过将交易处理放到内存中进行,新的SQL S ...

  5. Window 7 平台的IE11浏览器预览版发布

    继之前Windows 8.1 带来了IE11浏览器之后,今天Window 7 以及Windows Server 2008 R2平台的IE11浏览器预览版也已经发布. 当然这还只是一个开发者预览版,可能 ...

  6. VS2019预览版发布了

     VS2019正式版已发布:https://www.cnblogs.com/zhaogaojian/p/10648904.html 1.点击下载https://visualstudio.microso ...

  7. HarmonyOS 3.0.0开发者预览版全新发布

    2021年10月22日在华为开发者大会HDC.Together 2021 主题演讲上,我们发布了HarmonyOS 3.0.0开发者预览版,主要内容包括:Harmony设计系统.ArkUI 3.0.A ...

  8. .NET 7 发布的最后一个预览版Preview 7, 下个月发布RC

    微软在2022年8月9日 发布了.NET 7 Preview 7[1],这是它在11月10日 RTM 之前进入发布候选阶段之前的最后预览版. 预览版 7 已在 Visual Studio 17.4 预 ...

  9. 终于等到你!微软正式上线 Windows Terminal 预览版

    前一段时间,一直在知乎.技术社区收到技术小伙伴们的终极拷问:微软Build 大会上提到的**6月中旬**要上Windows store 的 Windows Terminal 到底啥时候可以用到呀? 有 ...

  10. 谷歌发布 Android 8.1 首个开发者预览版,优化内存效率

    今晨,谷歌推出了 Android 8.1 首个开发者预览版,此次升级涵盖了针对多个功能的提升优化,其中包含对 Android Go (设备运行内存小于等于 1 GB)和加速设备上对机器学习的全新神经网 ...

随机推荐

  1. 【Amadeus原创】Docker安装wikijs wiki系统

    拉取mysql8的镜像并运行 docker pull mysql docker run -d -v /data/mysql/data:/var/lib/mysql -v /data/mysql/con ...

  2. 腾讯云对象存储联合DataBend云数仓打通数据湖和数据仓库

    随着数字化进程不断深入,数据呈大规模.多样性的爆发式增长.为满足更多样.更复杂的业务数据处理分析的诉求,湖仓一体应运而生.在Gartner发布的<Hype Cycle for Data Mana ...

  3. Swift中让值类型以引用方式传递

    Swift中让值类型以引用方式传递 在 Swift 众多数据类型中,只有 class 是引用类型, 其余的如 Int.Float.Bool.Character.Array.Set.enum.struc ...

  4. 在 .NET 环境下访问 SOAP 服务

    在 .NET 环境下访问 SOAP 服务 SOAP 服务有着悠久的历史,目前仍然存在大量的 SOAP 服务,它是基于 HTTP 协议和 XML 技术的简单对象访问协议. 在 .NET Framewor ...

  5. (已解决)Public Key Retrieval is not allowed异常

    Public Key Retrieval is not allowed解决方法Public Key Retrieval is not allowed解决方法项目场景:问题描述:原因分析:解决方案:Pu ...

  6. Netty 中ChannelOption的含义以及使用的场景Netty 中ChannelOption的含义以及使用的场景

    一.概述 最近在写一个分布式服务框架,打算用netty框架做底层网络通信,关于netty的学习可以参考如下资料: http://blog.csdn.net/column/details/enjoyne ...

  7. 用EwoMail开源版搭建邮箱服务器

    介绍: EwoMail是基于Linux的开源邮件服务器,支持一键搭建,集成了众多优秀稳定的组件,是一个快速部署.简单高效.安全稳定的邮件解决方案,支持电脑和手机的客户端,适合个人或邮箱功能需求少的企业 ...

  8. Qt音视频开发32-qmedia内核回调拿图片数据

    一.前言 使用qmediaplayer来打开视频并播放,默认首选会采用QVideoWidget控件来展示,优点是不用自己来绘制,一切交给了QVideoWidget控件,这样可以做到极低的CPU占用,缺 ...

  9. 关于Qt中的qss样式表需要注意的坑

    关于QSS要注意的坑. qss源自css,相当于css的一个子集,主要支持的是css2标准,很多网上的css3的标准的写法在qss这里是不生效的,所以不要大惊小怪. qss也不是完全支持所有的css2 ...

  10. [.NET] 使用客户端缓存提高API性能

    使用客户端缓存提高API性能 摘要 在现代应用程序中,性能始终是一个关键的考虑因素.无论是提高响应速度,降低延迟,还是减轻服务器负载,开发者都在寻找各种方法来优化他们的API.在Web开发中,利用客户 ...