What’s New in Visual Studio 2022? A Deep Dive into the Latest Features
Visual Studio 2022 has been officially released with a go‑live license, bringing 64‑bit support, .NET 6, C++ 20, Azure Cloud Services, hot‑reload, enhanced debugging, Git integration, UI personalization, and many other productivity improvements for developers across languages and platforms.
Visual Studio 2022正式版已发布,带有go‑live许可证,可供开发者在生产环境中使用。
主要功能概览
64 位 :devenv.exe 仅提供 64 位版本。
Azure Cloud Services :支持 classic 与 extended support 项目。
C++ 改进
v143 构建工具可通过 VS 安装程序或独立工具使用。
调试器下的本地 C++ 应用程序支持热重新加载,兼容 MSBuild 与 CMake 项目。
在 WSL2 上本地构建和调试,无需 SSH 连接。
支持 CMakePresets.json 中的 buildPresets.target 选项。
精简 CMake 项目菜单,新增“删除缓存和重新配置”和“查看缓存”。
更新 CMake 概述页面以支持 CMakePresets.json。
实现 /scanDependencies 标志以输出 C++20 模块依赖关系。
LLDB 可用于远程进程调试。
随 VS 发布的 CMake 升级至 3.21 版。
LLVM 工具升级至 LLVM 12。
MSVC 默认使用 SHA‑256 源代码散列。
游戏开发工作负载可安装最新的 Unreal Engine。
改进 C++ 智能感应的导航、语法高亮和性能。
IntelliSense Code Linter 默认开启,提供即时建议。
在 -fsanitize=fuzzer 下支持 libfuzzer。
代码分析增强空指针解除引用检测。
代码分析强制检查带有 Check_return 或 Must_inspect_result 注释的函数返回值。
代码分析新增对 gsl::not_null 的支持。
在 C++ 移动开发工作负载中更新至 NDK r21 LTS。
C++ AMP 头文件已废弃,需定义 _SILENCE_AMP_DEPRECATION_WARNINGS。
调试和诊断
改进附加到进程对话框。
异常帮助器升级。
强制运行点击功能。
内存转储诊断分析。
新增依赖性断点类型。
External Sources 节点更新,可在子节点“无源模块”下查看模块并加载符号。
破解点沟槽改进。
临时断点、拖放断点、解决方案资源管理器中的外部源节点等功能增强。
个性化设计
为垂直和水平标签添加颜色标签。
新增主题包并与 VS Code 主题作者合作推出自定义主题集合。
提供主题转换器,将 VS Code 主题转换为 Visual Studio 2022 使用。
支持将 VS 主题与 Windows 主题同步。
文档管理功能增强,包括自定义标签宽度、加粗活动文档以及额外的关闭按钮。
编辑器改进
子词导航功能。
自动保存可作为预览功能使用。
多键复制/粘贴体验。
可扩展性
Microsoft.VisualStudio.Language.Client 程序集中的 API 被删除。
VSSDK 重大变化,VS 2019 扩展在 2022 年将不再兼容。
VS SDK 参考程序集不再安装到旧路径,建议使用 NuGet 包。
保留组织内部的 NuGet feed。
检查安装文件。
ILanguageClient 突破性变化修复。
云服务
Azurite 将用于 Azure Storage 本地仿真,取代旧的 Azure Storage 仿真器。
Git 工具
多存储库支持(跨不同 Git 仓库的解决方案)。
创建 Git 仓库时完全支持发布到 Azure DevOps。
状态栏增强,显示未拉取提交数量。
Git Changes 窗口溢出菜单提供额外本地仓库操作。
统一的 Diff 工具栏,显示添加/删除行数。
提交细节 UI 改进。
帮助菜单
重新设计帮助菜单,加入入门材料、提示/技巧以及开发者社区、发行说明、产品路线图和社交媒体链接。
热重载体验
.NET 开发者通过 VS 调试器可在多数 .NET 6 应用中使用热重载,无需调试器。
C++ 开发者在使用 VS 调试器时也可使用热重载。
IntelliCode
整行补全根据上下文预测 C# 代码并以内联建议形式呈现。
整行补全兼容最新的 JetBrains ReSharper。
JavaScript/TypeScript
新增项目类型,可创建独立的 JavaScript/TypeScript 项目并支持 Angular 与 React。
JavaScript 与 TypeScript 测试可在 VS Test Explorer 中运行。
NPM GUI 可用,支持像下载 NuGet 包一样下载 NPM 模块。
.NET 6 SDK
.NET 6 SDK 已内置于 Visual Studio 2022。
.NET 生产力
参数重构、数据流分析的跟踪值源、重新分配变量下划线等新特性。
覆盖对话框搜索选项增强。
XML 标签的快速信息保留空白和 CDATA 块。
“查找所有引用”窗口对多目标项目进行分组。
VB 中的重复类型重构。
“转到实现”不再导航到抽象成员。
Solution Explorer 同步命名空间以匹配文件夹结构。
后台代码分析配置迁移至 Solution Explorer。
新 .NET 项目默认启用 Nullable 引用类型。
C# 10.0 文件范围命名空间重构。
默认打开反编译源码导航。
空值检查优先于类型检查。
自动生成 XML 注释。
继承保证金默认启用。
编程语言
C# 10。
Razor (ASP.NET Core) 编辑器
改进 UI 冻结性能,提升解决方案启动速度。
语义着色速度提升至 2 倍。
支持 F7(查看代码),以及片段、格式化、缩进、颜色等多项改进。
远程测试
早期实验性预览,支持在 Linux 容器、WSL 和通过 SSH 的远程环境中运行测试。
测试工具支持
测试资源管理器显示改进。
从 17.0 起,通用测试和有序测试不再在 MSTest v2 中提供。
TestSettings 被 RunSettings 取代,鼓励迁移。
Web 负载测试和 Coded UI 测试在 VS2022 中仅提供最低支持,建议取消使用。
UWP 扩展 SDK 工具箱更新。
受信任的地点
改进信任设置,在打开不受信任代码时显示警告。
信任检查在解决方案文件夹级别进行。
用户创建的项目自动加入信任列表。
可跳过对 VS 创建的临时位置的信任检查。
更新、LTSC 和部署
VS2022 将在秋季和春季发布多个服务基线。
新安装程序可配置更新来源,支持 LTSC 或企业布局。
IT 管理员可在未安装 VS 的情况下报告问题。
用户界面
默认图标已更新刷新。
网络工具
发布摘要页面提供远程调试和分析操作。
连接的服务页面可启动存储资源管理器。
.NET 6 附带的 ASP.NET Core Empty 模板使用最小 API 范式。
Azurite 用于 Azure Storage 本地仿真。
通过“连接服务”体验可为 ASP.NET Core 应用添加 Microsoft 身份认证平台认证。
.NET 框架的 WPF XAML 设计器
新 WPF XAML Designer 基于 .NET Core 架构,取代旧版。
第三方控件供应商需支持新的可扩展性模型。
.designtools.dll 扩展在新设计器中仍可使用。
XAML 热重载
对工具栏和设置的细微变化。
XAML 实时预览
支持 WPF、UWP、WinUI、Xamarin.Forms 在 Android 模拟器或 UWP 桌面运行时的实时预览。
结合 XAML Hot Reload,实现 UI 变化即时在 VS 中可见。
XAML 样本数据
在 WPF 应用中创建 DataGrid、ListBox、ListView 时默认添加设计时示例数据,可在选项中关闭。
改进的 XAML 绑定体验
快速访问数据绑定对话框、从快速操作设置绑定、在对话框中选择属性等改进。
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
21CTO
21CTO (21CTO.com) offers developers community, training, and services, making it your go‑to learning and service platform.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
