Visual Studio 2022 版本 17.7 预览版发行说明
提示
即将推出:使用 GitHub Copilot for Visual Studio 抢先体验最新的 AI 驱动功能。 深入了解全面的代码解释、生成单元测试,并发现修复 bug 的解决方案。 登记!
提示
观看 Visual Studio 2022 发布活动的录制内容,了解新功能,听取提示和技巧,并下载免费的数字材料。
开发者社区 | Visual Studio 2022 路线图 | 系统要求 | 兼容性 | 可分发代码 | 发行历史记录 | 许可条款 | 博客 | 最新版本已知问题 | Visual Studio 新增功能文档
单击按钮即可下载最新版 Visual Studio 2022。 有关如何安装和更新 Visual Studio 2022 的说明,请参阅将 Visual Studio 2022 更新到最新版本。 另请参阅如何脱机安装的说明。
访问 Visual Studio 网站,下载其他 Visual Studio 2022 产品。
重要
预览频道未“上线”,也不打算在生产计算机上使用或用于创建生产代码。 有关详细信息,请参阅 Visual Studio 产品生命周期和维护。
Visual Studio 2022 版本 17.7 预览版
此次发布的 Visual Studio 2022 版本 17.7 预览版中的新增功能摘要
- 2023 年 5 月 16 日 — Visual Studio 2022 版本 17.7 预览版 1
Visual Studio 2022 博客
可从 Visual Studio 2022 博客获取来自 Visual Studio 工程团队的官方产品见解。 有关 Visual Studio 2022 版的详细信息,可参阅以下文章:
Visual Studio 2022 版本 17.7 预览版 1
发布时间:2023 年 5 月 16 日
此次发布的 Visual Studio 2022 版本 17.7 预览版 1 中的新增功能摘要
开发者社区亮点
- Visual Studio 2022 查找和替换 - 在文件中查找 - 未查找文件 89 票中的文本
- .vs 文件夹意外增长 32 票
- 单击固定的选项卡将窗口拖出并取消固定 9 票
- MSVC 编译器在用户定义的运算符重载 8 票时挂起
- 在 Unreal Engine 中查看着色器文件时,HLSL 工具会崩溃 Visual Studio,并且虚拟文件映射已提供 7 票
新式 C++ 和游戏开发:
C++
- 借助 Unreal 引擎命名约定检查器,Visual Studio 现在会在符号不符合 Unreal Engine 编码样式时提供提示。 将 .editorconfig 文件 添加到 Unreal Engine 项目后,Visual Studio 将在错误列表中显示命名约定警告,并在右键单击时提供“快速修复”选项。 有关详细信息,请访问 Unreal Engine 命名约定检查器。
- Visual Studio 作为预览功能提供,将检测并遵循 Unreal Engine 反射宏的缩进和格式设置规则。 若要启用特定于 Unreal Engine 的格式,请在“选项”中搜索“Unreal Engine”,或转到“工具”->“选项”->“文本编辑器”->“C/C++”->“代码样式”->“格式设置”->“Unreal 引擎”,检查“为 Slate 声明性语法和 Unreal Engine 反射宏应用特殊格式”。
- 添加了对 CMakePresets.json 版本 6 的支持。 有关此版本中提供的功能的详细信息,请参阅 CMake 文档 。
- 将 Visual Studio 附带的 LLVM 版本升级到版本 16。 有关此版本中提供的内容,请参阅 LLVM 和 Clang 发行说明。
- 添加了用于溢出检测的新内部函数,例如
_add_overflow_i32
。
生产力:
代码搜索和导航
我们解决了有关准确性和性能的已知问题,包括:
- 完全匹配 (例如,确切的文件名匹配) 应在列表中优先。
- 对于新的搜索查询,以前搜索的结果列表不应显示。
- 结果列表中应显示不同语言中同名的结果。
- 键入时,结果列表应准确更新。
更多信息请访问 https://aka.ms/all-in-one-search-blog。
可以通过以下方式启用一站式搜索:“工具”>“管理预览功能”>“新的 Visual Studio 搜索体验(需要重启)”。
多分支图和 Git 存储库改进
我们已实现 此建议的第一个版本,以便在同一图形中可视化多个分支以及其他 UI 改进。 请在此处留下反馈。
可以选择其他分支来与当前签出分支进行比较,或使用悬停的眼睛图标在图中打开和关闭分支,从而使用新的摘要图标跟踪当前签出分支上的传入和传出分支。 此外,还可以在 Azure DevOps 存储库中为作者提供头像,获取更流畅的图形呈现更新,并通过折叠分支面板或打开提交详细信息来最大化空间。
比较文件
为了响应开发者社区中这个高投票的票证,现在可以比较解决方案资源管理器中的文件。 请告诉我们你 在此调查中的想法。
复制和剪裁缩进
将代码从 Visual Studio 复制到另一个程序 (Outlook、Teams、Slack 等) 时,Visual Studio 现在会自动修复缩进。
Microsoft Teams 开发工具 (Teams 工具包)
我们进一步改进了 17.6 预览版中的预览体验,包括:
- 现在,我们让开发人员能够灵活地在对清单文件执行任何操作时指定 Teams 清单文件路径。
- 现在,可以通过在 teamsapp.yml 文件中指定 来自定义环境变量名称。 Teams 工具包将使用你指定的环境变量。
.Net 和云开发:
对 的 IntelliTest 支持。NET6 和 NetStandard
现在以预览版提供,启用后,将在 net6 和 netstandard 代码文件中启用编辑器上下文菜单“Intellitest (Preview) ”。
创建项目 将创建一个兼容的测试框架项目,生成的测试可以保存到其中,然后可以使用测试资源管理器或通过 CLI 运行。 这将创建方法的存根,但实际上不会探测代码以创建断言。 这本身可用于创建一个格,你将在其中注入自己的代码,但它通常是一个占位符,并提供代码文件中支持的所有方法的预览。 在生成测试之前,无需创建项目。
生成测试 可以针对单个方法或整个类运行。 此过程将生成并探测目标程序集。 Z3 规划求解利用符号执行来推荐测试参数。 随后发出并分析测试代码,以捕获并保留所有可增加目标代码覆盖率的测试用例。 测试集会持续重复,以保留参数,以最大程度地扩大覆盖范围并最大程度地减少重复。 Intellitest 结果窗口显示探测状态以及使用输入、输出和断言结果创建的测试列表。 这些测试可以根据需要保存到创建的项目或新项目。 保存测试提供现有项目或创建保存测试的新项目的选项。
更多信息请访问 https://learn.microsoft.com/en-us/visualstudio/test/intellitest-manual。
可以为 启用 IntelliTest 支持。NET6 和 NetStandard: 工具 > 管理预览功能 > “IntelliTest 支持 NetFx 和 Net6 使用 Z3 v4 (需要重启) ”
F#
- 添加了内联返回类型提示:
因为它们处于预览状态,并且默认处于禁用状态。 通过 工具启用它们 -> 选项 -> 文本编辑器 -> F# -> 高级 -> 显示返回类型提示
- 添加了新的批量代码修补程序:
请参阅 #15082 中这些代码修补程序的完整列表
- 解决了使用多行参数时参数名称提示崩溃的问题
- 添加了用于自定义快速信息描述宽度的选项: 工具 -> 选项 -> 文本编辑器 -> F# -> QuickInfo -> 首选描述宽度(以字符为单位)。 有关详细信息,请参阅 #14964
- 将活动日志合并到输出窗格 (有关详细信息,请参阅 #15028)
- 修复了删除未使用的打开的批量代码修复
- 提高了快速信息链接导航的速度
反馈和建议
我们期待你的宝贵意见和建议! 可使用安装程序或 Visual Studio IDE 右上角的“发送反馈”图标,或者通过“帮助”>“发送反馈”来报告问题或提出功能建议。 可在 Visual Studio 开发者社区跟踪你的问题,也可在这里添加评论和查找解决方案。 此外,还可通过实时聊天支持获得免费安装帮助。
Blogs
通过参考开发人员工具博客网站中的见解和建议,随时掌握所有新版本的最新最全资讯,并发表有关大量功能的深入分析帖子。