Visual Studio 发行说明

我们很高兴地宣布 Visual Studio 2022 v17.14 的可用性。 此更新侧重于稳定性和安全性,以及针对所有开发人员的 AI 改进

下载 Visual Studio 2022 v17.14 ,享受这些新功能和改进。

Features

最新版本中的所有新功能。

生产力

美人鱼图表呈现

在 Markdown 编辑器和 Copilot Chat 中呈现美人鱼图表。

Visual Studio 现在支持在 Markdown 编辑器和 Copilot Chat 中渲染 Mermaid 图表。 此功能可让你直接在代码编辑器中可视化复杂的数据结构、工作流和关系。 例如,你可以使用 Mermaid 语法在 Markdown 文件中创建流程图和图表 - 这些流程图和图表会在预览中自动呈现。

在 Markdown 编辑器中呈现的美人鱼图表

你还可以请求 Copilot Chat 为你生成图表和示意图,以帮助使用视觉辅助工具解释复杂的代码库或逻辑。 返回的 Mermaid Markdown 会在聊天窗口中自动呈现。

Copilot Chat 生成的美人鱼图表语法

请试用一下并立即生成 Mermaid 图表! 我们很乐意听取你的反馈以及任何有关改进此功能的建议。

GitHub Copilot

Copilot 代理模式

Copilot 代理模式是 AI 辅助开发的下一个演变,并且已退出预览版。

代理模式解锁了使用 GitHub Copilot 进行构建的新方法,超越单轮次提示来处理从头到尾处理整个任务。

若要开始,请打开 Copilot 聊天,单击“ 询问”,然后切换到 代理

从想法到代码

智能体模式能够理解你的意图,制定计划,调用相关上下文,并采取行动。 它可以修复 bug、编辑文件并生成解决方案 - 从单个提示到达到目标为止。

借助 MCP 集成,代理模式还可以从连接的系统(如 GitHub、CI 管道或监视仪表板)拉取丰富的上下文,以采取更智能的作。

尝试一下,看看它能带来什么改进!

代理模式

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


Copilot 代理模式改进

Copilot 代理模式是 AI 辅助开发的下一个演变,并且已退出预览版。

在过去的几个月中,我们对智能体模式进行了重大更新,以提高可靠性、响应性和整体可用性。 以下是我们已推出的一些改进:

性能和可靠性
  • 智能体模式现在显示更清晰的进度指示器,因此你总能知道后台正在发生什么。
  • 改进的提示缓存以加快响应时间。
工作集和文件管理
  • 工作集现在在为空时保持隐藏状态,仅在相关时显示文件计数。
  • 被拒绝的文件会自动从磁盘中删除并从工作集中移除。
  • 标记为无更改的项目现在会排序到底部,以减少混乱。
提示和规划
  • 更新的提示格式提高了智能体模式在 GPT-5 模型上的性能。
  • 我们正在测试一种新的规划工具,该工具允许模型使用实时更新的 markdown 文件将复杂请求分解为更小的、可跟踪的步骤。 早期基准测试(包括 SWE-bench)显示在多步骤任务上有显著提升。
构建和工具控制
  • 现在可以在智能体模式下禁用自动构建。 打开聊天提示旁边的工具菜单,取消选择 run_build 以进行手动控制。
修复和一般改进
  • 取消智能体模式请求现在更可靠。
  • 解决了智能体模式在工具执行期间可能停滞或挂起的几个问题。

我们每个冲刺都在发布更新。 如果你有一段时间没有使用智能体模式,现在是再次尝试的好时机。 体验更快、更流畅、更稳定 — 而我们才刚刚开始。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


GPT-5 模型支持 📣

GPT-5 提供更快的响应,甚至提高编写和理解代码的性能。

我们很高兴地分享 GPT-5 已为每个人降落在 Visual Studio 中。 它更快、更快速地帮助你读取、编写和重构代码。 我们迫不及待地想看看你使用它生成的内容。

GPT 模型支持 5

单击 IDE 中的 Copilot 锁屏提醒,打开聊天,然后选择 GPT-5(预览版) 以试用它。

📣 查看功能票证以分享你的反馈并继续对话。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


MCP 支持已正式发布

MCP 支持已在 VS 中正式发布,支持将整个工程堆栈无缝连接到 Copilot,以获取更强大的开发体验。

我们很高兴地宣布 MCP 支持现已在 Visual Studio 中正式发布! 通过整个开发堆栈中的丰富实时上下文扩展代理模式的强大功能。

模型上下文协议(MCP)是一种协议,旨在将 AI 代理与各种外部工具和服务无缝连接,类似于 HTTP 标准化 Web 通信的方式。 目的是使任何客户端能够集成可靠的工具服务器(如数据库、代码搜索和部署系统),而无需为每个工具编写自定义连接。

随着 GA 公告的推出,我们带来了一组全新的令人兴奋的功能,在路上,让 MCP 比以往更容易访问和管理服务器配置。

远程服务器的完整身份验证规范支持(包含任何 OAuth 提供程序)

VS 现在支持新的 MCP 授权规范,这意味着 OAuth 支持现在包括任何和所有 OAuth 提供程序。 以前,Visual Studio 通过与 VS Keychain 集成支持对远程服务器的身份验证。 现在,在 VS 的 8 月版本中,远程 MCP 服务器支持使用任何 OAuth 提供程序进行身份验证。 只需从 .mcp.json 文件中的 CodeLens 中选择“ 管理身份验证 ”,即可重定向到浏览器弹出窗口,以便为该服务器所需的 OAuth 提供程序轻松提供凭据。

添加新 MCP 服务器的更简单方法

在 VS 中正式发布 MCP 时,我们将添加两种向新 MCP 服务器添加连接的新方法。 无需再手动将 JSON 代码片段复制并粘贴到 .mcp.json 文件中。 MCP 支持现在确实是 VS 中具有以下新功能的一流体验:

从 Web 单击一次安装

你是否注意到 MCP 服务器存储库中的按钮,即“在 VS Code 中安装”,并想知道何时会支持此简单功能? 你的问题得到了解答! Visual Studio 现在支持从 Web 进行一键式服务器安装。 使用此新功能,在 VS 中添加新的 MCP 服务器与单击按钮一样简单。 在 VS 按钮中查找 “安装 ”按钮,开始出现在收藏的 MCP 服务器的存储库中! 如果要将如下所示的按钮添加到自己的 MCP 服务器存储库,或者注意到收藏的公共服务器存储库中缺少一个按钮,则可以使用以下协议处理程序模板创建一个:vsweb+mcp:/install,后跟服务器元数据。

添加服务器 UI 流

通过新的添加流,我们比以往更轻松地将连接添加到新的 MCP 服务器。 无论是联机找到的服务器还是组织的自定义 MCP 服务器,都不再需要手动复制、粘贴和配置 JSON 以连接到新服务器。 若要访问此流,只需在 GitHub Copilot Chat 的工具选取器窗口中单击新的绿色加号按钮图标。

添加服务器,工具选取器窗口

只需指定服务器的名称、输入法、HTTP 服务器的任何参数或 URL,并无缝添加连接。

Mcp 添加流

MCP 治理策略支持

我们知道,组织可能有不同的策略,通过与 GitHub 策略的新集成,企业和组织现在可以对其组织中的 MCP 功能进行精细控制。 IT 管理员现在只需导航到 GitHub 策略设置,并打开或关闭所有用户的 MCP 功能。

Mcp 治理

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


自带模型聊天

现在,你可以将自己的语言模型连接到 Visual Studio Chat,从而提供对 AI 体验的更多选择、控制和自定义。

现在,你可以将自己的语言模型连接到 Visual Studio Chat,从而提供对 AI 体验的更多选择、控制和自定义。

使用 来自人类GoogleOpenAI 的 API 密钥尝试最新版本,运行满足安全性或性能需求的模型,并在内置和自定义选项之间轻松切换。

自带密钥

开始:

  1. 打开聊天窗口→从模型选取器中选择>”,添加提供程序和密钥。

仅适用于聊天。 Copilot Business 或 Enterprise 不支持。 模型功能有所不同。

即将推出更多提供商和功能,帮助你使用最适合你的 AI 进行构建。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


部分接受代码完成 📣

使用快捷方式或边距指示器按单词或逐行接受 Copilot 代码补全字,以便进行精确控制。

你是否只想要接受 Copilot 代码完成的前几句话或几行,而不是接受整件事? 我们很高兴地宣布,从 Visual Studio 17.14.13 开始,你将能够按单词或逐行部分接受完成字!

在编辑器中完成 Copilot 代码时。

  • 使用快捷方式 Ctrl+向右 一次接受一个单词,
  • 使用快捷方式 Ctrl+向下 一次接受一行。

还可以使用边距指示器部分接受完成。 单击边距指示器时,它还将具有部分接受的选项。

代码完成的装订菜单 部分接受代码完成

现在,你将对想要接受的代码完成量进行更精细的控制,而无需接受整个建议和之后进行编辑。

注意:部分接受将替代绑定到这些快捷方式的现有功能。 若要将其关闭,请转到 “工具→选项”→ IntelliCode →高级→全线完成

📣 查看功能票证以分享你的反馈并继续对话。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


默认情况下隐藏下一个编辑建议

自动隐藏下一个编辑建议,并且仅在与下一个编辑建议交互时查看它。

想要在编码时集中注意力,看不到自动弹出的下一个编辑建议(NES) ? 我们听到,有时 Copilot 建议在意外出现时可能会有点分心,现在在 Visual Studio 中,默认情况下,你可以隐藏 NES,并且仅当你想要时查看它们。

仍会根据编辑触发 NES,当有可用的 NES 可供你查看时,边 距指示器 将在装订线空间中弹出,指向它建议的行。 若要查看此建议,可以:

  1. 单击边距指示器或
  2. Tab

将显示建议。 然后,查看建议后,可以再次按以 Tab 接受它或按 ESC 关闭它。 接受建议后,任何相关建议都会再次出现,因为你可能会发现它们也很有用。 与以前接受的建议无关的任何其他新建议将再次隐藏。

例如,在下面的视频中,更改为 PointPoint3DNES 后,NES 可用,但不直接显示。 边距指示器和提示栏显示第 4 行有建议,然后单击该指示器进行审阅。

隐藏下一个编辑建议

若要试用此体验,请转到 “工具→选项”→ GitHub → Copilot → Copilot 完成并 选中 “折叠下一个编辑建议”。

还可以通过边距指示器中的上下文菜单提供的快捷方式对其进行配置。 每当编辑器中已准备好代码建议(无论它来自 Copilot 或 IntelliCode),边距指示器将弹出并指向相应的行。 单击指示器时,将显示一个上下文菜单,通过多种方式与代码建议进行交互:

  • 接受(单击“ 接受 ”或按 Tab
  • 消除 (单击“ 消除 ”或按 ESC
  • 设置:可以直接从此处打开 GitHub Copilot 完成设置页面。

装订菜单

如果你有任何反馈,请在开发人员社区中告知我们!

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


使用 Google 帐户注册 Copilot

现在可以注册将 Copilot 与现有的 Google 帐户配合使用!

科皮洛特新手? 现在可以使用 Google 帐户注册 Copilot!

GitHub 现在支持使用 Google 进行社交登录,你可以直接从 Visual Studio 链接新帐户。

单击 Copilot Chat 窗口中的 “使用 Google 注册 ”按钮,简化使用 Google 帐户设置的 Copilot!

Copilot Chat 窗口

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


Gemini 2.5 Pro 和 GPT-4.1

刚刚在 Visual Studio Chat 中删除了新模型。

更强大的性能、更快的速度和更高的灵活性 — 一切都在 IDE 中!

新模型

🚨 Gemini 2.5 Pro 现已集成到 Visual Studio 中

作为目前性能最优的模型之一,Gemini 2.5 Pro 现已支持在 Visual Studio 中使用。 它与 GPT-4.1、GPT-4o、Claude Sonnet 3.7、Claude Sonnet 3.5 和 o3 mini 一起,为 IDE 带来真正多功能的 AI 体验。

🚨GPT-4.1 现已成为默认模型

GPT-4.1 现已成为 Visual Studio 的默认模型,为用户带来更快、更敏捷且整体体验更加流畅的性能提升。


现在可以根据当前任务、代码和工作流程,选择最适合的模型。 试试看,然后告诉我们你的想法!

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


Claude Sonnet 4 和 Claude Opus 4

Claude Sonnet 4 和 Claude Opus 4 现已在 Visual Studio 中正式发布,提供增强的 AI 功能。

我们很高兴地宣布 Claude Sonnet 4 和 Claude Opus 4 现已对所有 Visual Studio 客户正式发布!

  • 代理模式下 使用 Claude Sonnet 4 可以更快、更集中的交互。
  • 尝试在 “询问模式 ”中同时尝试 Claude Sonnet 4 和 Opus 4,以便进行更深入的推理。

若要开始,请在 Visual Studio 中打开聊天,选择模型选取器,然后选择适合工作流的 Claude 模型。

新模型

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


MCP 服务器支持

使用新的模型上下文协议(MCP)将 Visual Studio 连接到 AI 代理,这是共享上下文、访问数据和驱动智能功能的标准化方法。

Visual Studio 现在支持 MCP 服务器,实现更智能、更互联的 AI 开发。 MCP 是一个开放协议,用于规范应用程序和 AI 智能体如何共享上下文并采取行动。

使用 Visual Studio 中的 MCP,可以做的不仅仅是从 MCP 服务器检索信息,例如日志、测试失败、PR 或问题。 还可以使用该信息在代码、IDE 甚至整个堆栈中连接系统中驱动 有意义的作

MCP 服务器支持

设置 MCP 服务器

mcp.json 文件添加到解决方案中,Visual Studio 将自动检测它。 它还可以识别来自其他环境(如 .vscode/mcp.json)的配置。

使用 MCP 服务器

在 Copilot 聊天面板中打开 “工具 ”下拉列表以查看连接的 MCP 服务器。 从那里,Copilot 可以结合上下文,使用现有的系统采取行动。

注意: 需要处于 代理模式 才能访问 MCP 服务器并与之交互。


无需离开 Visual Studio 即可将堆栈的全部功能引入 Copilot!

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


MCP 服务器 7 月更新

Visual Studio 中的增强 MCP 服务器集成可实现整个工程堆栈的无缝连接,从而获得更强大的开发体验。

我们在 Visual Studio 中对 MCP 服务器集成进行了重大改进,可帮助你解锁更强大的连接工程堆栈。

MCP 服务器支持已改进

设置 MCP 服务器

mcp.json将文件添加到解决方案 - Visual Studio 会自动检测它(我们还支持.vscode/mcp.json)。 使用每个服务器块顶部的 CodeLens 控件直接启动和管理服务器。 从编辑器中轻松重启、运行和控制输入。

通过密钥链支持进行无缝身份验证,现在可以使用现有的密钥链凭据直接在 Visual Studio 中使用受支持的 MCP 服务器进行身份验证,无需其他配置。

使用 MCP 服务器

在 Copilot 聊天面板中打开 “工具 ”下拉列表,查看连接的 MCP 服务器,并通过选择箭头来显示新菜单来管理它们。 在此处,可以在新的模式对话框中管理服务器输入。 然后,Copilot 可以拉取上下文并使用现有系统采取措施。

注意: 需要处于 代理模式 才能访问 MCP 服务器并与之交互。

MCP

Visual Studio 现在支持 MCP 服务器的新身份验证协议

通过密钥链支持进行无缝身份验证,现在可以使用现有的密钥链凭据直接在 Visual Studio 中使用受支持的远程 MCP 服务器进行身份验证,无需其他配置。 GitHub 和 Entra ID 帐户目前支持此功能,支持后续更新中的其他 OAuth 提供程序。

对 MCP 服务器的 Codelens 支持

Visual Studio 现在支持 MCP 服务器的 CodeLens,使你可以直接从编辑器启动和管理服务器输入和身份验证。 这样就可以更轻松地控制开发环境,而无需离开代码。

MCP Codelens 支持


无需离开 Visual Studio 即可将堆栈的全部功能引入 Copilot!

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


MCP 提示、资源和采样

Visual Studio 现在支持 MCP 提示、资源和采样,通过连接到工程堆栈来增强 Copilot 体验。

我们很高兴地宣布,Visual Studio 现在支持 MCP 提示、资源和采样,以通过从工程堆栈引入更多上下文来增强 Copilot 体验。

MCP 提示和提示模板

模型上下文协议为服务器提供了一种向客户端公开提示模板的标准化方法。 MCP 提示允许服务器提供结构化的消息和指令,以便与迎合相关服务器的用例和内容的语言模型进行交互,从而确保你获得针对特定任务的最佳响应。 Visual Studio 现在允许你发现可用的提示、检索其内容并提供参数来自定义它们。

若要引用可能来自 MCP 服务器的任何提示,可以使用聊天中的 “+ 引用 ”按钮找到它们,然后选择 提示 选项,然后从浮出控件中选择 MCP 提示

Mcp Prompttemplates

你将在此处看到一个模式对话框,此对话框允许你选择要使用的提示。 然后,可以单击“ 插入提示 ”,以在聊天中包含此提示中的文本。

Mcp 提示菜单

某些 MCP 提示将包含参数,你可以填写这些参数以根据你的特定需求自定义提示。 这些模板称为提示模板。 如果你在模式对话框中选择包含参数的提示,则可以在将提示插入到聊天中之前指定这些值。

Mcp 提示模板

MCP 资源和资源模板

模型上下文协议 (MCP) 还为服务器提供了一种向客户端公开资源的标准化方法。 资源允许服务器共享向语言模型提供上下文的数据,例如文件、数据库架构或特定于应用程序的信息。 每个资源都由 URI 唯一标识。 这允许你从 MCP 服务器中获取更多内容,并直接在 IDE 中提取与它们相关的上下文。

若要使用任何可能可用的 MCP 资源,你可以在 Copilot Chat 中引用它们,就像引用任何其他上下文片段(例如文件)一样:使用井号 (#),后跟资源 URI。

Mcp 资源

与提示一样,MCP 资源也可以包含参数,你可以填写这些参数以根据特定需求自定义资源。 这些模板称为资源模板。 如果相关服务器具有想要利用的资源模板,则可以使用聊天中的 “+ 引用 ”按钮对其进行配置,然后从菜单中选择新的 MCP 资源 选项。

Mcp Resourcetemplates 1

在此处,你将看到一个模式对话框,该对话框允许你选择要使用的资源模板,并填写它可能具有的任何参数。 完成后,可以单击“ 添加资源 ”,使此 MCP 资源与任何其他 MCP 资源一样在聊天中可引用,如上所述。

Mcp Resourcetemplates 2

MCP 采样

MCP 中的采样允许服务器通过以下方式实施代理行为:允许 LLM 调用嵌套在其他 MCP 服务器功能内。 模型上下文协议规范中的此功能允许 MCP 服务器向 LLM 发出请求,而不是采用 LLM 向 MCP 服务器请求内容或信息的典型工作流。 Visual Studio 现在仅支持此功能,并允许 MCP 服务器更深入地代表你执行更复杂的任务(当然,所有这些都需要你的许可!)。

无需进行任何配置即可利用采样,只要 MCP 服务器支持采样,Visual Studio 也将支持采样。 如果 Copilot 确定你发送的请求将从采样调用中受益,那么你将首先看到一个对话框,其中包含请求的所有详细信息,并要求你在后台发生任何事情之前确认采样调用。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


Copilot 输出窗口上下文

现在可以在 Copilot Chat 中将输出窗口引用为上下文。

我们知道输出窗口对于跟踪生成、调试和了解底层发生的情况至关重要。 现在,Copilot 可以读取该信息 — 因此可以提出问题、获得帮助并根据输出日志采取行动。

输出窗口

如何使用
  • 使用 #output 在聊天中直接引用它。
  • 单击聊天输入中的 ➕ 图标将其添加为上下文。
  • 直接询问 Copilot:检查输出日志并帮我修复这个错误。
  • 或在 “输出”窗口中 右键单击,然后选择“ 使用 Copilot 解释 ”立即附加它。

试试看,看看阅读和处理日志有多么轻松!

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


按需提供 Copilot 建议 📣

仅在 Visual Studio 中显式请求代码建议时接收这些建议。

想要更多地控制编辑器中弹出的代码建议? 现在,在 Visual Studio 中,可以选择退出自动代码建议,并且仅在显式请求时收到建议。

可以在 “工具→选项”→ IntelliCode →“常规”中为代码建议配置触发器。 默认体验是在编辑器中自动生成代码完成,你可以取消选中此设置,以仅在通过按 Alt+Alt+ 显式请求它们时接收建议。 如果请求后有多个代码建议可用,也可以按 Alt+Alt+ 循环浏览它们。

触发时,光标位置将显示一个思考提示栏,指示 Copilot 正在生成代码建议。 如果未返回任何建议,提示栏将在几秒钟后消失。 如果建议可用,可以通过按键 Tab接受它们。

手动触发的代码完成

现在,可以使用此新设置更好地自定义 Visual Studio 中的代码建议体验。 例如,如果希望以最小分心为重点,可以取消选中此设置,并在想要毫不费力地收到更多建议时重新更改此设置。 请与我们分享任何反馈,并告诉我们想要自定义 Copilot 代码建议体验的任何其他方法!

📣 查看功能票证以分享你的反馈并继续对话。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


查看 Copilot 使用情况

现在可以直接在 Visual Studio 中跟踪 Copilot 使用情况。

想知道你本月使用 Copilot 的次数吗? Visual Studio 现在包含 Copilot 消耗 面板,用于轻松跟踪使用情况!

无论使用的是 Copilot 免费还是付费计划,均可直接在 IDE 中查看聊天请求数量和代码补全次数。

使用情况状态

单击 IDE 右上角的 Copilot 锁屏提醒 并选择 Copilot 消耗来访问它。

这将打开一个面板,显示本月当前的使用情况。

提示:如果使用的是高级模型,则还会在模型选择器中看到使用倍数,这样就能始终清楚自己正在使用什么。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


保存或共享提示

现在可以在存储库中创建可重用的提示文件,以便快速运行或共享常用提示。

编写有效的提示可能非常耗时,但充分利用 Copilot Ask 和代理模式是关键。 我们启用了可重用的提示文件,因此你可以反复利用出色的提示。 从那里,你可以从聊天窗口快速运行它们,或与你的团队共享它们。

如何编写提示文件
  1. 按照在提示框中通常采用的方式编写提示,并附加 # 引用,以从解决方案中添加特定信息,例如方法、类和文件。 甚至可以引用其他提示文件以包含常见基本指令。
  2. 将其从提示框复制到 markdown 文件中,并将其与 .prompt.md 文件扩展名一起保存在文件夹中存储库 .github/prompts 的根目录中。

提示:你甚至可以得到科皮洛特的帮助,优化你的提示,以更具体。

将提示文件附加到提示

如何运行提示
  1. 开始键入 #prompt: 以直接在聊天中引用文件夹中 .github/prompts 的所有提示文件,或单击➕聊天输入中的图标将其添加为上下文。
  2. 在提示框中添加任何其他信息,或只是发送提示!

试一试,加快 AI 工作流的速度!

📣 此调查,以帮助使该功能变得更好。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


GitHub Copilot 演练

Visual Studio 中现已提供 GitHub Copilot 演练,有助于快速启动和运行。 利用演练,将了解如何直接在编辑器中使用关键 Copilot 功能。

我们很高兴在 Visual Studio 中推出 GitHub Copilot 演练! 本演练是一个内置于编辑器中的交互式指南,可帮助你逐步探索 GitHub Copilot 的功能。 无论是 GitHub Copilot 的新手还是想要了解其最新功能,演练都会让你比以往任何时候都更加轻松入门。

演练入门

从 Visual Studio 启动 Copilot 演练,方法是转到 “Copilot”按钮(右上角)→ GitHub Copilot 演练

你将看到介绍 Copilot 体验的不同部分的引导活动,例如:

  • 在聊天中编写提示
  • 使用内联代码补全
  • 接受、编辑或拒绝 Copilot 建议
  • 探索和了解 Copilot 编辑等新功能

本演练是深入了解文档和实践使用之前,大致了解 Copilot 可以执行的作的好方法。

如何访问演练

首次登录到 GitHub Copilot 时,GitHub Copilot 演练会自动打开,因此可以轻松入门。 若要稍后重新访问,请转到 Visual Studio 中的 GitHub Copilot → GitHub Copilot 演练

无论是首次探索 GitHub Copilot,还是只需要快速回顾一下,本演练都是发挥 Copilot 全部潜能的友好指南。 深入了解并开始自信地创建!

Walkthrough

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


对C++代码完成的改进

我们在 Visual Studio 中为 C++添加了 Copilot 代码完成的新更新,以提供更准确的代码建议。

我们一直在努力提高 C++ GitHub Copilot 完成的质量。

现在,Copilot 可以在C++项目中检测更相关的上下文,以便在 Visual Studio 中为特定代码库提供更准确的代码建议。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


更好地搜索 Copilot 的语义代码

上下文改进有助于找到正确的代码来引用或更新,从而使用 Copilot 提升日常任务。

Copilot Chat 通过改进的日常任务的上下文不断变得更智能。 可以期待更好的整体响应,因为核心代码搜索功能已得到增强,以提供更相关的结果。 现在,Copilot 更善于检索与自然语言描述的行为、概念或功能相关的正确代码片段。 这些改进得益于利用代码库的远程索引。

语义代码搜索

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


哥皮洛特记忆 📣

通过教导 Copilot 团队的编码标准和最佳做法来真正了解项目意识 - 创建跨会话持续一致性!

为了让 Copilot 能有效适应你独特的团队和存储库工作,它需要了解你的项目和团队的最佳做法。 Copilot 记忆使 Copilot 能够理解并应用你项目的特定编码标准,使其具有项目意识,并在各个会话中保持一致。

检测到的首选项的屏幕截图,用于将内存保存到项目文件

Copilot 记忆的工作原理

当你在聊天中提示时,“记忆”使用智能检测来理解你的团队的首选项。 这意味着,当你像往常一样提示时,Copilot 正在寻找你纠正其行为的实例,明确指出一个标准,或者要求它记住一些内容。 检测到后,你将看到一个确认提示,用于保存首选项。 然后,Copilot 会将首选项分类为以下三个文件之一:

  • .editorconfig 用于编码标准
  • CONTRIBUTING.md 用于最佳做法、指南、体系结构标准等。
  • 以及 README.md 用于高级项目信息

这样,正如你提示的那样,你不仅教会了 Copilot 如何在未来更好地响应你,而且还通过记录你的开发最佳做法来帮助你的团队,并增强他们未来的 Copilot 响应!

📣 查看功能票证以分享你的反馈并继续对话。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


针对 Copilot 说明

现在可以创建可组合指令文件,以将自定义指令定向到代码库的特定区域。

让 Copilot 按照你想要的方式做出反应可能是一个挑战。 在代码库的不同区域中,可能有不同的编码标准、最佳做法或体系结构模式。 使用指令文件,你现在可以将特定指令定向到存储库中的特定文件夹或文件,使 Copilot 真正具有项目意识,并在会话之间保持一致。

作为引用自动附加的说明文件

启用功能

“工具 > 选项 > GitHub > Copilot Copilot > 聊天 > ”中启用自定义说明,以便从 .github/instructions/*.instructions.md 文件加载并添加到请求

编写指令文件
  1. 使用 applyTo 标头设置指令的格式,并为希望包含这些指令的文件指定一个 glob 模式。
---

applyTo: "src/**/*.cs"

---
  1. 在文件正文中,可以使用自然语言指定内容,并引用其他指令文件来共同组成指令。
  2. 将文件扩展名为 .instructions.md 的文件保存在存储库根目录的 .github/instructions 文件夹中。

提示:你甚至可以获得 Copilot 的帮助,使指令更加详细。

工作原理

当你提示 Copilot 时,它将自动检测哪些指令文件应用于当前上下文中的文件,并将其作为引用附加。 你可以通过单击响应卡中的参考来查看附加了哪些指令。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


GPT-4o 代码完成模型 📣

引入 GPT-4o Copilot 代码完成模型,使你获得更高质量的完成。

我们很高兴地宣布,新的 GPT-4o Copilot 代码完成模型现已在 Visual Studio 17.14 中为 GitHub Copilot 用户提供! 这种基于 GPT-4o mini 的高级模型经过了 275,000 多个优质公共存储库的进一步训练,涉及 30 多种常用编程语言。 因此,开发人员可以期待更准确的建议和增强的性能。

GPT-4o Copilot 访问须知:

  • Copilot Pro、Business 或 Enterprise 用户:现在可以在 17.14 及更高版本中使用新模型。
  • Copilot 免费用户:使用此模型将计入您每月 2,000 次免费完成次数。

📣 查看功能票证以分享你的反馈并继续对话。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


AI 文档注释生成 📣

自动生成C++和 C# 函数的文档注释。

Copilot 现已无缝集成到 Visual Studio 的代码编辑器中,通过为函数生成文档注释来显著提高工作效率。

为项目启用自动文档注释生成后,只需根据设置(例如 ///)键入注释模式,Copilot 即可根据函数的内容立即完成函数说明。 此功能可节省时间,让你更专注于编码,减少文档。

AI 文档注释

此功能适用于C++和 C# 项目文件,使编码体验更流畅、更高效。

📣 查看功能票证以分享你的反馈并继续对话。

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


下一步编辑建议

NES 利用先前所做的编辑并预测接下来的编辑,无论是插入、删除还是混合两者。

我们非常高兴地宣布,Visual Studio 现已提供“下一步编辑建议”(简称 NES),以进一步改善编码体验。 NES 可利用之前的编辑并预测下一次编辑,无论是插入、删除还是两者的混合。 “补全”只能在插入符号位置生成建议,而 NES 则不同,它可以支持在文件的任何位置进行下一步编辑。 NES 通过支持开发人员的代码编辑活动,增强了现有的 Copilot 完成体验。

NES 入门

通过“工具”→“选项”→“GitHub”→“Copilot”→“Copilot 完成”→“启用下一次编辑建议”启用 NES。

与完成一样,获取 NES 需要做的就是开始编码!

当你看到编辑建议时,如果它位于与你现在位于的行不同的行上,则建议 你首先按 Tab 导航到相应的行 。 无需再手动搜索相关的编辑内容,NES 将提供指引!

用于跳转提示栏的 NES 选项卡

与编辑在同一行后,可以按 Tab 键接受建议。

按下 NES 的 Tab 键以接受提示栏

注意:可以通过转到“工具→选项”来打开/关闭提示栏, → IntelliCode →高级→隐藏以灰色文本显示的提示

除了提示栏外,滚动条槽中还会弹出一个箭头,表示有可用的编辑建议。 可以单击箭头来查看编辑建议菜单。

NES 装订线箭头

示例方案

下一步编辑建议可以在各种情况下发挥作用,不仅可以做出明显的重复性修改,还可以做出合乎逻辑的修改。 下面是一些示例:

将 2D 点类重构为 3D 点:

NES 重构点类

使用 STL 将代码语法更新为新式 C++:

请注意,NES 并不只是进行重复性更改,如将所有 printf() 更新为 std::cout,而且还更新了其他语法,如 fgets()

NES 更新C++语法

根据新添加的变量进行逻辑更改:

NES 对新变量做出了快速反应,增加了玩家在游戏中的最大猜测次数,而 Copilot 完成也会跳出来提供帮助。

NES 添加新变量

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


自适应粘贴

现在可以让 Copilot 调整粘贴的代码,以适应现有代码的上下文。

在 Visual Studio 中粘贴代码时,通常需要一些额外的步骤才能使代码无缝运行。 可能需要调整参数以匹配解决方案中已使用的参数,或者语法和样式可能与文档的其他部分不一致。

自适应粘贴功能可自动调整粘贴的代码以适应现有代码的上下文,最大限度地减少手动修改的需要,从而节省时间和精力。 此功能还支持小错误修复、代码样式、格式化、人类语言和代码语言翻译以及填空或继续模式任务等场景。

例如,如果你有一个实现接口的Math类,将该方法的实现IMath复制并粘贴到同一Ceiling文件中,将它改编为实现尚未实现的接口成员Floor

调整已粘贴的方法以实现接口

执行常规粘贴 {KeyboardShortcut:Edit.Paste} 时,将显示自适应粘贴 UI。 按请求 Tab 建议,将显示一个差异,将原始粘贴的代码与调整后的代码进行比较。

通过启用 工具→选项→ GitHub → Copilot → 编辑器来试用它,→启用自适应粘贴

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


使用 Copilot 实现

现在可以让 Copilot 完全实现你的空 C# 方法。

现在,如果要在尚未实现的 C# 代码中引用方法,则可以使用名为 Generate 方法 的常见灯泡重构来立即在类中创建该方法。 但是,此重构仅创建一个具有正确签名的方法,而方法本身只是一个空的框架和 throw new NotImplementedException 行。 这意味着,虽然方法在技术上存在,但你必须做更少的工作来创建它,你仍然需要自己实现该方法,这可能需要更多时间。

使用 Copilot 重构实现旨在让你在此方案中提高工作效率,让你能够在 GitHub Copilot 的帮助下自动实现或将肉添加到方法中。 当遇到一个只包含 NotImplementedException 抛出的空方法时,可以在那一行上点击灯泡图标(CTRL+.),然后选择“使用 Copilot 实现重构”,Copilot 会根据现有代码库、方法名称等自动补全方法的所有内容。

使用 Copilot 实现

Important

激活 GitHub Copilot Free 并解锁此和其他 AI 功能。 无需试用。 无需信用卡。 只需提供 GitHub 帐户。

立即免费激活 GitHub Copilot


调试和诊断

探查器 Copilot 代理

使用新的基准项目模板和 Built-In 分析支持加速性能优化。

我们很高兴在 Visual Studio 中引入 Profiler 代理:这是一种第一类 AI 助手,可帮助你了解和修复性能问题,而无需成为分析专家。

Profiler 代理与 GitHub Copilot 一起工作,以便:

  • 分析 CPU 使用率、内存分配和运行时行为
  • Surface 性能瓶颈
  • 生成 BenchmarkDotNet 基准 或优化的现有基准
  • 应用建议的优化
  • 验证引导循环中的所有改进

入门很简单。 只需在 Copilot Chat 中提问(代理模式):

  • 选项 1:标记 @profiler

    • 示例: @profiler 我的应用为何速度缓慢?
  • 选项 2:在不标记的情况下直接提问

    • 示例:为什么我的帧速率下降?

      (确保从 Copilot Chat 中的“选择工具”菜单为此选项启用 Profiler 代理。

探查器 Copilot 代理

无论你是不熟悉分析还是专业,代理体验都会在指尖上提供强大的 AI 驱动的诊断。 无需真正、可作的见解即可获得深入的知识。

目前支持高 CPU 使用率分析和 .NET 对象分配,即将推出更多方案。

适用于 .NET MAUI 应用的新调试器

集成到 Visual Studio Core 调试器中的 .NET MAUI 的新 Mono 调试引擎。

用于 .NET MAUI 应用的新 Mono 调试器是集成到 Visual Studio 调试器中的高级调试引擎。 它在可靠性、性能以及与 Visual Studio 其他部分的功能一致性方面有显著改进。

值得注意的增强功能包括“仅我的代码”、“变量”和“表达式评估”

要使用此功能,请确保您已启用以下 Visual Studio Preview 选项:为 MAUI 应用启用新的 .NET Mono 调试器

适用于 .NET MAUI 应用的新调试器

目前,此功能仅适用于 Android 平台。 iOS 支持即将推出。

显示 LINQ 表达式的数据提示 📣

带子句悬停数据提示的增强 LINQ 表达式调试体验。

生成和排查 LINQ 查询问题可能是一个繁琐而复杂的过程,通常要求精确的语法知识和无数次迭代。 为了缓解这些挑战,Visual Studio 2022 的调试器现在提供了一个 LINQ 悬停数据提示功能。

当在调试过程中处于中断状态时,可以将鼠标悬停在 LINQ 查询的单个子句或段上,以便在运行时计算即时查询值。

此外,您还可以单击 DataTip 末尾的 GitHub Copilot 图标,对您悬停过的特定查询子句借助 Copilot 进行分析。 然后,Copilot 会解释该子句的语法,并说明为什么会得到指定的结果。

LINQ 悬停数据提示框示例

此功能显著提高效率,使调试体验更流畅、更轻松,帮助你更快地查明与 LINQ 查询相关的问题,并简化整个开发工作流。

📣 查看功能票证以分享你的反馈并继续对话。

Zero-Length 数组分配洞察

.NET 分配工具现在标识零长度的数组分配,帮助优化内存使用率和性能。

.NET 分配工具现在提供对零长度数组分配的详细见解,帮助你识别和优化不必要的内存使用情况。 虽然这些分配单个看起来无关紧要,但它们会迅速累积并影响性能,尤其是在高性能或内存受限的应用程序中。

本机检测工具

通过此更新,可以通过单击“调查”链接来调查零长度的数组分配,这将打开“分配”视图,显示分配详细信息。 双击可以显示这些分配发生的代码路径,从而实现精确的优化。 为了提高效率,请考虑使用 Array.Empty<T>()(静态分配的空数组实例)来消除冗余的内存分配。

Git 工具

更好的代码评审 📣

为代码更改获取更好的 GitHub Copilot 支持的建议,以帮助你尽早发现潜在问题并提高代码质量。

现在,有了最新的模型更新,你甚至可以在提交之前,对本地更改获得更好的代码评审注释!

与关键改进相同的 UX
  1. 增强注释质量 - 较新的推理模型意味着更深入、更精确的代码评审,捕获传统方法可能忽略的微妙 bug 和性能问题。

  2. 优化注释生成 - 通过一次性生成整个更改集的注释,而不是逐文件生成注释,可以获得改进的性能和更全面的评审。

  3. 更新的提示技术 - 更清晰、更直接的提示可确保更准确和相关反馈。

开始

在 Visual Studio 中启用 Copilot 订阅并启用以下功能标志后,可以在“Git 更改”窗口中看到新的 sparkle 注释按钮。 单击后,Copilot 将检查你的更改集,并在编辑器中内联提出一些建议。

17.14 本地代码审阅按钮

确保已启用以下两个功能标志:

  • 拉取请求注释预览功能选项的工具。
  • 工具选项GitHubCopilot源代码管理集成启用 Git 预览功能

📣 查看功能票证以分享你的反馈并继续对话。参与这项调查,以帮助完善此功能。

Note

必须在 工具→管理预览功能 下启用此功能


Copilot Chat 中的 Git 上下文

在 Copilot 聊天中引用提交和更改。

Copilot Chat 现在支持在 Git 更改窗口中引用提交和更改。 可以要求 Copilot 汇总更改、解释特定提交等!

引用更改

#changes 查看未提交的更改。 例如,你可以要求科皮洛特通过引用你 #changes来提醒你到目前为止所做的一切。

带有提示的聊天输入字段

引用提交

开始键入 #commit:时,Copilot 将显示要从中选择的最新提交列表。 如果有要引用的较旧的提交,还可以引用其特定的提交 ID。

键入 #commit 显示最近提交的下拉列表

然后,请聊天将提交用于 写入单元测试等任务,以涵盖此提交中的更改 ,或 查找此提交中的潜在问题

试用

确保启用以下功能标志以使用这些引用: 工具选项GitHubCopilot源代码管理集成启用 Git 预览功能

查看传出/传入提交 📣

Git 存储库窗口现在在其工具栏上提供一个筛选器,用于仅显示传出/传入提交。

“Git 存储库”窗口是了解 Git 历史记录的首选位置。 当你在本地分支上工作时,本地分支可能会与远程分支不同步,原因可能是因为你创建了新提交(传出)或有新的提交需要拉入(传入)。

使用工具栏中可用的新传出/传入筛选器,你就能立即发现这些未同步的提交。 您的提交,他们的提交 - 轻松扫描,保持完美同步!

仅显示传出/传入工具栏按钮

📣 查看功能票证以分享你的反馈并继续对话。

还原 Git 存储库窗口 📣

使用此新设置在重启之间保持“Git 存储库”窗口打开。

作为分支作的专用环境, Git 存储库窗口 可能是日常开发的核心。 如果你发现自己经常在每个 Visual Studio 会话中重新打开它,此更新旨在节省时间和精力。

Git 存储库窗口分支列表。

我们已向 Git > 设置 添加了一个新设置,用于在重启 Visual Studio 时自动还原 Git 存储库窗口。 此外,窗口将包含在保存的窗口布局中,从而增强自定义选项。

默认情况下,该功能是关闭的,以确保不需要的人不受影响。 但是,如果你喜欢方便,此设置非常适合你。

“Git 设置”页,其中包含“还原 Git 存储库”窗口复选框。

📣 查看功能票证以分享你的反馈并继续对话。

默认分支名称 📣

允许用户在创建新的 git 存储库时自定义初始默认分支。

现在可以直接通过 Visual Studio 为新 Git 存储库来设置默认分支名称。 这一新设置可与 Git 配置顺利集成,从而更轻松地根据自己的偏好调整工作流程。

使用主分支创建新存储库后,Git 更改窗口

只需导航到 Git > 设置,下次创建存储库时,就会看到自定义分支名称自动生效。

“Git 设置”页,其中包含“默认分支名称”文本框

📣 查看功能票证以分享你的反馈并继续对话。

IDE

Microsoft 365 代理工具包 - 6 月

Agents Toolkit 17.14 GA 6 月版本更新。

6 月版本包含了针对 17.14 GA 版本的多个修补复程序:

  • 在 Microsoft 365 Copilot 中启用自定义引擎代理启动和预览版。

我们的工具包中提供了一个名为“天气代理”的自定义引擎代理模板。 我们已更新此模板,使其可在智能 Microsoft 365 Copilot 副驾驶® 聊天中启动并预览。 要进行试用,只需在调试时选择 Copilot 启动配置文件即可。

  • 修复了在安装 Microsoft 365 Agents Playground 时,调试失败导致的错误提示框问题。 现在工具包将弹出清晰的提示信息和操作指南,指导如何解决该问题。

  • 模板将 应用清单依赖项升级到 v1.21

  • 我们新的品牌变化引入的模板 README 文件中的几个错误已得到修复。

  • 更新了扩展管理器中的工具包图标。

  • 修复了启动 Agents Playground 时所需的频道 ID 值仅允许 msteams 和模拟器的问题。 现在它允许其他值,如 Webchat。

增强的 NuGet 身份验证

NuGet 现在在要求你提供凭据时提供上下文。

我们改进了 NuGet 身份验证过程。 如果我们检测到任何潜在的身份验证问题,您将会看到一个新的身份验证对话框,其中提供了有关信息流和特定帐户需求的相关信息。

NuGet 身份验证对话框

此更新增强了多重身份验证 (MFA) 方案的重新身份验证过程,解决了连续身份验证提示的问题,并确保在管理专用 NuGet 源时获得更流畅的整体体验。

Microsoft 365 代理工具包

Teams 工具包 17.14 GA 更新。

我们很高兴地宣布,我们的产品(以前称为 Teams 工具包)已重命名为 Microsoft 365 代理工具包。 此更改反映了我们扩大的重点和承诺,以支持 Microsoft 365 生态系统中更广泛的平台和项目类型。

随着我们不断增强产品,我们将重点从仅支持 Teams 开发转向使开发人员能够在 Microsoft 365 平台中创建 Microsoft 365 Copilot 代理和其他应用程序。 这些平台包括 Microsoft 365 Copilot、Microsoft Teams、Office 系列和 Outlook。 通过这种范围扩展,我们可以通过提供全面的工具、模板和资源来更好地为用户提供服务,以便开发各种Microsoft 365 解决方案。

新名称Microsoft 365 Agents Toolkit,更好地代表了产品的各种功能和功能。 我们相信,此更改将帮助我们的用户更轻松地识别 Microsoft 365 环境中可用的各种开发机会。

感谢你在不断发展以满足开发人员社区不断增长的需求时继续提供支持。

创建声明式代理

我们很高兴地宣布,在此版本中,我们添加了用于为 Microsoft 365 Copilot 生成声明性代理的项目模板。

创建 DA 项目

可以创建带有或不带有操作的声明性代理。 可以选择定义新的 API,或利用现有的 API来执行任务或检索数据。

使用 Microsoft 365 代理工具包在 Microsoft Copilot 中调试和预览声明性代理。

启用平滑的一键式调试

在以前版本的 Teams 工具包(现在称为 Microsoft 365 Agents Toolkit)中,当用户调试生成的任何解决方案时,需要在调试项目之前使用命令 准备 Teams 应用依赖项 。 此命令触发了工具包,以帮助开发人员创建必要的资源进行调试,例如注册或更新 Teams 应用。

为了增强 Visual Studio 用户的调试体验并使其更加直观,我们取消了这一步骤,并启用了一键调试体验。 现在可以直接点击调试按钮,而无需任何准备步骤。 但是,如果在两个调试事件之间对应用清单进行了编辑,并且需要更新应用,则仍存在执行此作的选项。 我们提供两种调试模式:

调试方案

  • 使用更新应用进行调试:如果对应用进行了编辑,请选择默认配置文件 [Your Target Launch Platform] (browser) ,以确保应用更新。
  • 在不更新应用的情况下进行调试:选择第二个配置文件 [Your Target Launch Platform] (browser) (skip update app) 跳过更新应用资源,使调试更轻松、更快。
升级到 .NET 9

此外,在此版本中,我们已刷新所有项目模板以支持 .NET 9。

.net9 支持

祝你编码愉快!
Microsoft 365 代理工具包团队

跨主题保留字体首选项 📣

更改主题现在将保留字体和字号首选项。

我们理解,开发人员在编码时选择的字体是个人选择,受可读性、辅助功能或美学偏好的影响。 Visual Studio 主题主要侧重于演示颜色,与你的首选字体无关。

通过此更新,我们引入了在切换主题时保留字体和大小选项的功能。 现在,你可以在 Visual Studio 中设置一次字体首选项,并切换主题,而无需每次重新配置字体设置。 请注意,字体的颜色仍然与主题相关联,因为这是主题的目的,但你的字体选择将被保留。

Visual Studio 编辑器使用相同字体显示相同的代码段,但其中一半的代码采用深色主题,一半为浅色。

📣 查看功能票证以分享你的反馈并继续对话。

Desktop

32 位程序集的工具箱支持

使用 Windows 窗体 (WinForms) 进程外设计器,在自动添加到 .NET Framework 项目工具箱的显式程序集引用中发现自己最喜爱的 Windows 窗体 (WinForms) 控件。

适用于 .NET Framework 项目的 WinForms 进程外设计器现在通过自动发现和显示独立程序集引用中存在的控件(也称为 显式程序集引用)来增强体验。

此功能极大地丰富了引用旧版 32 位程序集的 .NET Framework 项目的设计时间体验。 用户可以利用改进的工具配置,以便更好地与新式开发工作流集成并提高工作效率。 有关详细信息,请阅读我们的博客帖子

在设计时更新 UI 📣

实时预览、热重载和其他 UI 工具现在可在设计时使用。

现在可以在设计时进行实时预览,实时查看应用 UI 的变化。 还可以通过这种方式使用热重载和其他实时 UI 工具,确保工作流程的无缝衔接。

即使脱离调试器,也可以使用这些工具,从而不间断地对设计进行实验和改进。

实时预览演示

单击新的实时预览指示器,在设计时从任何 XAML 文件访问实时预览:

实时预览屏幕截图

无论你是在开发新的 .NET MAUI 应用还是优化现有的 WPF 应用,这些增强功能都有助于更快、更自信地交付高质量的应用程序。

📣 查看功能票证以分享你的反馈并继续对话。

新的 UWP .NET 9 MSTest 项目模板 📣

Visual Studio 现在包括面向 .NET 9 和 Native AOT 的更新的 UWP MSTest 项目模板。

Visual Studio 现在包括面向 .NET 9 和本机 AOT 的新 UWP MSTest 项目模板。 我们与 MSTest 团队密切合作,将 UWP .NET 9 项目的所有必要支持添加到 MSTest 库、基础结构以及 Visual Studio 测试主机。 UWP 测试项目能够面向 .NET 9 并利用所有新式 .NET SDK 和 MSTest 工具,同时仍按预期在 UWP 上下文中运行。

UWP .NET 9 MSTest 项目模板

之前使用 .NET Native 的 UWP MSTest 项目模板仍然可用。 不过,我们建议今后使用针对 .NET 9 和本地 AOT 的新项目模板。 在 Visual Studio 17.13 中,我们调整了所有 UWP 模板的排序,以便在搜索结果中优先考虑新的 .NET 9 项目模板。

📣 查看功能票证以分享你的反馈并继续对话。

Extensibility

安装扩展包

安装程序现在可以处理扩展包的安装。

安装程序现在支持扩展包,它们是由单个扩展引用的多个扩展组合而成的捆绑包。

若要在安装程序中使用扩展包,请先在 .vsconfig 文件中指定所需的扩展。 然后,使用 Visual Studio 安装程序的导入配置功能导入包含扩展详细信息的 .vsconfig 文件。

有关创建或生成 .vsconfig 文件的详细信息,请参阅 安装配置文档

导入 .vsconfig 文件后,将定向到修改屏幕,其中扩展将在安装摘要窗格中的自己的标题下分组。 在这里,可以选择或取消选择整个扩展包或任何包中的单个扩展。

通过 Visual Studio 安装程序扩展安装

更快的 VSIX 生成时间

具有一个或多个项目引用的 VSIX 项目现在使用智能增量生成,大大提高了 F5 方案和开发人员工作效率。

如果要开发包含多个项目的 Visual Studio 扩展,你将喜欢此性能增强功能! 具有一个或多个项目引用的 VSIX 项目现在只会生成实际需要重新生成的项目,从而使开发工作流的速度更快。

Vsix 生成 Perf

工作原理

改进了快速更新检查系统,以便更智能地确定解决方案中的哪些项目需要重新生成:

  • 如果您修改了项目 A,而该项目依赖于项目 B 和 C,那么只有项目 A 会被重新生成。
  • 如果修改项目 B,则仅重新生成项目 A 和 B
  • 这个智能功能扩展到整个项目的依赖树中。
实际影响

在实际方案中,性能改进是实质性的。 例如,Visual Studio 附带的 GitHub Copilot 扩展(项目约 30 个项目)的生成时间改进了 50% 以上的增量更改 - 将生成时间从大约 60 秒缩短到 24 秒!

此增强功能特别适用于:

  • 具有多个依赖项的大型 VSIX 项目
  • 快速迭代开发工作流
  • 频繁的 F5 调试会话

请注意,如果解决方案仅包含单个项目,则不会看到此增强功能带来的任何性能优势。

注意:这仅适用于 SDK-Style VSIX 项目。

现在您的扩展开发速度显著提升——享受编码的乐趣吧!

扩展管理器更新 📣

Visual Studio 中的扩展管理器有几项新的改进,可更轻松地管理扩展。

我们很高兴在 Visual Studio 中推出一系列强大的新功能,这些功能可简化工作流程并改善扩展管理体验。 这些更新可确保轻松获取最新信息,并更轻松地控制更新的应用方式和时间。

最新动态

无缝自动更新

Visual Studio 现在会在打开应用程序时自动触发更新,确保始终拥有最新的功能和修补程序,而无需手动干预。

Extman Autoupdates

为已应用的更新重启黄金提示条

应用更新时,会出现一个金色条通知,提示你重新启动 Visual Studio 以便让更改生效。

扩展页中的自动更新设置

我们已通过将自动更新设置直接集成到扩展页,让自动更新设置更易于访问,从而快速访问配置选项。

Extman Updatesettings

按待处理更改进行筛选

现在,一个新的待处理类别突出显示了待处理更改,让你随时了解需要注意的更新和修改。

Extman Pending

自动更新设置

除了扩展页,自动更新设置现在还可在 “工具→选项”→“环境”→扩展下使用,从而获得更直观的设置管理体验。

Extman 选项

简化的设置体验

我们简化了设置 UI,使自动更新和其他相关首选项的配置更简单,单击次数更少,选项更清晰。

排除的扩展列表

Visual Studio 现在提供自动填充的排除扩展列表,可帮助你管理不应自动更新的扩展。 对于需要手动控制版本更新的关键任务扩展,这一点特别有用。

这些增强功能旨在提高可用性,减少更新摩擦,让你更好地控制开发环境,同时确保你从最新的改进中受益。

📣 查看功能票证以分享你的反馈并继续对话。

Data

SSDT 📣 中使用 SDK 样式的 SQL 项目

现在,可以使用 SQL Server Data Tools 项目中的 SDK 样式项目文件格式和增强的 SQL 调试和架构比较功能。

Visual Studio 17.14 中的更新为 SDK 风格的 SQL Server Data Tools(预览版)引入了新的项模板和 .dacpac 数据库引用。 SDK 样式的 SSDT SQL 项目基于 Microsoft.Build.Sql SDK,该 SDK 为 SQL Server Data Tools (SSDT) 项目提供了跨平台支持和改进的 CI/CD 功能。

通过减少冗长的项目文件和对 NuGet 包的数据库引用,团队可以在单个项目中更有效地在大型数据库上进行协作,或者从多个项目中编译多组对象。 Microsoft.Build.Sql 项目的数据库部署可以在 Windows 和 Linux 环境中自动化,通过使用 Microsoft.SqlPackage dotnet 工具发布 SQL 项目生成的工件 (.dacpac)。 详细了解 SDK 样式的 SQL 项目和适用于 SQL的 DevOps。

在 SDK 样式的 SQL Server Data Tools 中添加数据库引用

在 17.14 中,数据库引用已扩展到支持项目和 .dacpac 工件引用。 未来版本将支持将数据库引用作为包引用。 slngen 解决方案文件生成器的最新更新还增加了对 Microsoft.Build.Sql 项目的支持,从而能够以编程方式管理大型解决方案。

若要在解决方案中使用 SDK 样式的 SQL 项目,请确保在 Visual Studio 安装程序中安装最新的 SSDT 预览组件。

安装程序启用预览版 SSDT 功能

📣 查看功能票证以分享你的反馈并继续对话。

.NET

应用现代化

GitHub Copilot 应用现代化现在内置于 Visual Studio 中。

GitHub Copilot 应用现代化代理是 Visual Studio 中由 AI 提供支持的工具,可帮助你将 .NET 应用程序升级到较新版本并将其迁移到 Azure。

如何入门
  1. 在 Visual Studio 中打开 .NET 项目或解决方案。
  2. 使用以下方法之一启动现代化代理:
    • 在解决方案资源管理器中右键单击解决方案或项目,然后选择“现代化”,
    • 打开 Copilot 聊天 窗口,然后键入 @modernize 升级请求。
  3. @modernize 代理知道要升级或迁移的内容。

使用应用现代化代理,使 .NET 应用保持最新并利用最新的 Azure 功能比以往任何时候都更容易。 试一试,看看可以节省多少时间!

C++

Unreal Engine Blueprint Debugger

对调试 Unreal Engine 蓝图的高级支持。

我们很高兴宣布对 Unreal Engine 项目的增强调试支持。 Visual Studio 现在直接在调用堆栈和局部变量窗口中显示蓝图信息。

Unreal Engine Blueprint Debugger

此更新允许在单个会话中一起调试蓝图和C++代码,从而更轻松地跟踪交互并识别两个脚本层的问题。 此外,现在可以在蓝图代码中设置断点,从而提供更集成的调试体验。

Unreal Engine Blueprint Debugger 局部变量

将鼠标悬停在 CMake 模块的工具提示

在“IntelliSense 快速信息和完成”中添加了对 CMake 模块的支持。

我们非常高兴地宣布,我们已在 Visual Studio 中为 CMake 模块添加了基于 IntelliSense 的完成和快速信息支持。 现在可以直接从 Visual Studio 编辑器中查看所有可用的 CMake 模块并了解更多相关信息,从而使开发过程更顺畅、更高效。

快速信息

在将鼠标悬停在引用的 CMake 模块上时,IntelliSense 会提供所选模块的详细信息,帮助你一目了然地了解其使用情况和功能。

CMake 信息在快速信息概览CMake information in the Quick InfoCMake information in the Quick Info中

Completion

CMakeLists.txt 或其他 CMake 脚本文件中开始键入 CMake 模块时,IntelliSense 将提供可供选择的可用模块列表。

CMake 模块完成

C++动态调试

全面调试能力适用于优化过的C++代码,而不影响性能。

调试优化的代码现在比以往更容易。 通过激活 C++ 动态调试,可以像调试未优化代码一样调试优化代码。 可以查看所有本地变量,单步执行任何位置,并在优化后的二进制文件上设置全保真断点。 有关详细信息,请阅读我们的博客帖子

C++动态调试

填充模板 IntelliSense

模板 IntelliSense 现在使用“转到定义”(F12)自动填充模板参数。

现在,可以使用 “转到定义 ”或 “F12”在模板栏中自动填充模板参数,该参数显示并允许编辑模板参数。

例如,按 vector 上的 F12 现在将跳转到 vector 并自动填充模板栏,使开发人员能够快速检查和修改模板参数。

在下面的示例中,使用 “转到定义 ”或按 F12 将填充模板栏中的类型和分配器。

自动填充模板 IntelliSense

用户报告的热门错误修复

📣 请查看此版本中所有用户报告的 bug 修复的完整列表。

Important

Domain-Specific 语言模型序列化已有重大更改。 对于包含自定义属性类型的模型,使用默认序列化机制的开发人员需要为这些自定义属性类型添加 TypeConverters。 有关如何执行此操作的示例,请参阅 自定义文件存储和 XML 序列化

版本 17.14.18

发布日期:2025 年 10 月 20

热门 bug 修复 来自社区
XAML 编辑器将不再将嵌套类标记为 {x:Static} 和 {x:Type} 标记扩展中的错误。 例如,即使它有效,{x:Static p:Class+Nested.Value} 也会被波浪作为错误。 反馈单
拼写检查器应在 Lo 和 Ll/Lu 类别之间拆分单词 反馈单
在 Visual Studio 17.14.13 中,Blend 中未显示 .NET C# 错误波形曲线 反馈单
新的 Visual Studio 2022 更新包括中断 Git 的 LibCurl 库 反馈单
Visual Studio 2022 Enterprise - 无法打开应用服务 .diagsession 文件 反馈单
已禁用在 ARM64 上将 FP 用作常规用途寄存器。 反馈单
更新了 Visual Studio 安装程序,以包含 10.0.26100 Windows SDK(10.0.26100.6584)的最新服务版本。
修复了与新的预向量优化和向量器传递(影响任何优化代码 /O2)的不良交互。
修复了生成包含转发数据的 ARM64X DLL 时未解决的外部错误。 反馈单
ARM64 上的 PGO 检测运行时崩溃 反馈单

版本 17.14.17

发布日期:2025 年 10 月 14

热门 bug 修复 来自社区
.NET 升级助手扩展不再与 Visual Studio Enterprise 17.14.36518.9 兼容 反馈单
修复了在调试期间计算C++表达式时可能出现的崩溃。 反馈单
Copilot 聊天窗口主题与主题设置冲突 反馈单
使用 copilot 调试 Android 中的异常永远不会正常工作 反馈单
修复了 Copilot Profiler 代理的 bug,其中未能创建 BenchmarkDotNet 基准项目。
适用于 iOS/tvOS/macOS/macCatalyst 的 NET 发行说明
已处理的安全咨询 CVE Descritpion
Visual Studio 信息泄露漏洞 CVE-2025-54132 此安全更新通过 Markdown Mermaid 解决任意数据外泄问题
Visual Studio 远程代码执行漏洞 CVE-2025-55240 此安全更新解决了 Gulpfile 中不受信任的搜索路径远程代码执行漏洞
.NET 安全功能绕过漏洞 CVE-2025-55315 由于区块扩展分析不正确,此安全更新解决了 HTTP 请求走私漏洞
.NET 信息泄露漏洞 CVE-2025-55248 此安全更新解决了 SmtpClient 在没有 TLS 的情况下连接时可能没有 TLS 的漏洞,即使 UseSsl 为 true

版本 17.14.16

发布日期:2025 年 9 月 23

热门 bug 修复 来自社区
Project 的 Nuget 包管理器 -> 连接到源垃圾邮件 反馈单
使用 UseDynamicDebugging link.exe 返回错误 1422 并忘记了如何报告错误详细信息 反馈单
无法查看现有 TFVC 签入策略 反馈单

版本 17.14.15

发布日期:2025 年 9 月 16

热门 bug 修复 来自社区
改进 Visual Studio 中 Internet 中断的 GitHub Copilot 复原能力 反馈单
当访问发生在异常处理程序中时 ASAN false use-after-scope positive 反馈单
C++动态调试错误地初始化静态局部变量 反馈单
升级到 VS 17.14.5 后,“LINK: 错误LNK2001:未解析的外部符号” 反馈单
KASAN 驱动程序无法链接引用宽字符串函数(wcscat、wcscpy、wcsncpy) 反馈单
在不使用链接器的情况下使用 Cmake 时,Visual Studio 2022 Github Copilot 生成停滞 反馈单
Copilot 代理模式错误 - “get_output_window_logs” 失败:无法从参数 paneId 派生 System.Guid 类型的值 反馈单
我们将新的 Copilot Profiler 代理引入 Visual Studio 2022,允许用户获取优化代码方面的帮助。

版本 17.14.14

发布日期:2025 年 9 月 9

热门 bug 修复 来自社区
符号下载不再有效 反馈单
修复了成员访问的值类别的问题。 反馈单
修复了数组的值类别的问题。 反馈单
修复了与数组值类别错误相关的 ICE。 反馈单
修复了 MSBuild 生成内部错误,而不是在 glob 扩展失败时报告生成消息的问题。
.NET 运行时更新为 8.0.20 和 9.0.9,将 .NET SDK 更新为 9.0.305
VS 17.14 中的扩展更新 反馈单
GitHub Copilot 聊天窗口自动滚动到最新生成的单词,防止在响应生成过程中从顶部读取 反馈单
配置代码覆盖率视图失败 反馈单
代理:聊天窗口中保留的更改总数,无法消除 反馈单

版本 17.14.13

发布日期:2025 年 8 月 19

热门 bug 修复 来自社区
VS 2022 v17.14.11 无法加载 mcp 服务器 反馈单
Copilot 代理模式中断,无法在此线程中恢复:System.ArgumentException: 路径 EditsFunctionHandler GetErrorsAsync 中的非法字符 反馈单
实时可视化树和实时属性资源管理器不起作用 反馈单
修复了在本地化 RESX 文件中错误地将缺少字符串值写入为空字符串的问题,导致这些区域性返回空字符串。 通过此修复,此类值现在以 null 的形式写入,允许将其解析为默认(中性)值。 反馈单
ucrtbased.dll 版本 10.0.26100.4188 缺少符号 反馈单
已将 MinGit 更新为 v2.50.1,以解决存储库位于 ReFS 卷和 Windows Server 2022 上的用户无法使用 VS IDE 执行 Git作的问题。 反馈单
修复了以下问题:某些源文件中报告了不正确的 IntelliSense 错误,这些源文件编码为 Shift JIS,并包含带日语字符的字符串文本。
VS 现在包括 MAUI 9.0.82 (SR8.2)
修复了链接某些 MASM 生成的调试信息时堆栈溢出崩溃。

版本 17.14.12

发布日期:2025 年 8 月 12

已处理的安全咨询 CVE Descritpion
GitHub Copilot 和 Visual Studio 远程代码执行漏洞 CVE-2025-53773 此安全更新解决了 Copilot 更改设置以将 chat.tools.autoApprove 设置为 true 的漏洞

版本 17.14.11

发布日期:2025 年 8 月 4

热门 bug 修复 来自社区
误报生存期代码分析警告 C26849:不要取消引用无效指针(lifetime.1)。 反馈单
修复了 SIMD 优化的合法性检查。 反馈单
从 19.43 回归:使用长符号生成 PDB 期间 link.exe 崩溃 反馈单
修复了 /Gs0 ARM64EC上的 chkstk 调用不正确。 反馈单
不会选取 http-client.env.json 中的环境(自 Visual Studio 17.14.0 更新以来) 反馈单
Copilot 代理模式中断,无法在此线程中恢复:System.ArgumentException: 路径 EditsFunctionHandler GetErrorsAsync 中的非法字符 反馈单
Visual Studio 2022 安装程序中删除了以下 Windows SDK 版本:10.0.18362.0、10.0.20348.0 和 10.0.22000.0。 如果以前使用 Visual Studio 安装了其中一个版本的 SDK,则更新时会将其卸载。 如果项目面向上述任一 SDK,可能会遇到生成错误,例如: 找不到 Windows SDK 版本 10.0.22000.0。在项目属性页中安装所需的 Windows SDK 版本或更改 SDK 版本,或者右键单击解决方案并选择“重定目标解决方案”。 若要解决此问题,我们建议将项目重定向到 10.0.26100.0,或者根据需要将早期支持的版本重新定目标。 有关受支持的 SDK 版本的完整列表,请访问: https://developer.microsoft.com/windows/downloads/sdk-archive/ 如果需要安装不受支持的 SDK 版本,可在此处找到它: https://developer.microsoft.com/windows/downloads/sdk-archive/index-legacy/

版本 17.14.10

发布日期:2025 年 7 月 29

热门 bug 修复 来自社区
更新到 17.14.8 后,无法生成 iOS-Projects 反馈单
VS 17.14 中的扩展更新 反馈单
由于model_max_prompt_tokens_exceeded,代理模式不可用 反馈单
运行 dotnet 命令时,Github Copilot 在 Visual Studio 中挂起 反馈单
Visual Studio 中的 GitHub Copilot UI 不会自动更新 MCP 服务器动态工具列表 反馈单
Visual Studio 调试选项“始终运行不受信任的源服务器命令而不提示”未按预期工作 反馈单
AI、Copilot、Agents 和 MCP - .mcp.json dotnet run 命令无法使用相对路径 反馈单
.NET 9 MAUI:找不到 .NET 运行时 9.0.5 或更高版本 反馈单
对于 MAUI 应用,XAML 编辑器顶部有一个实时预览工具栏和按钮。 该按钮已移动到“调试 > Windows”下的菜单项,这将允许键盘辅助功能和功能搜索正常工作。 工具栏消失后,XAML 编辑器将返回垂直空间。 反馈单
在行末尾的编辑器中键入“\x”将导致 IDE 无限期挂起 反馈单
Live Unit Testing 失败,出现“找不到文件... .cshtml__virtual.html__virtual.js” 反馈单
修复了可能导致 Visual Studio 解决方案加载挂起的 MSBuild 挂起。
如果 NuGet 审核已关闭,请确保 NuGet作(添加、更新、卸载)期间包管理器 UI 不会查询漏洞数据。
现在,已为 Visual Studio 中的 GitHub Copilot 集成 Google 的社交登录支持。

版本 17.14.9

发布日期:2025 年 7 月 15

热门 bug 修复 来自社区
运行单元测试后,GitHub Copilot 代理预览版无法运行终端命令 反馈单
Copilot 文件更改预览为空 反馈单
转义键不会关闭 XAML 文件中的查找框 反馈单
修复了在 PATH 中有无效 Java 可执行文件时列出 Android 调试目标。 反馈单
VS 17.14 中的扩展更新 反馈单
删除了对C++#include 完成的筛选,以便在键入尖括号和引号时显示完整列表。 反馈单
AI、Copilot、Agents 和 MCP - .mcp.json dotnet run 命令无法使用相对路径 反馈单
通过删除在 Visual Studio 中创建 Linux 消耗函数应用的选项,改进了使用 Flex Consumption 预配 Function App 时的用户体验。
修复了客户在安装和更新期间需要关闭 StandardCollector.Service.exe 的问题。

版本 17.14.8

发布日期:2025 年 7 月 8

热门 bug 修复 来自社区
无法再生成 MAUI 项目的 net9.0-ios 目标 反馈单
设置 C# 或 VB.NET 项目的属性时,“启动对象”下拉列表将正确显示可从中选择的对象。 反馈单
用于调试的 Visual Studio 中未显示 Docker 容器。 反馈单
更新了 Visual Studio 安装程序,以包含 10.0.26100 Windows SDK(10.0.26100.4188)的最新服务版本。
已处理的安全咨询 CVE Descritpion
Visual Studio - 特权提升 CVE-2025-49739 标准收集器服务中对使用时间的检查时间允许本地特权升级
Gitk 参数漏洞 CVE-2025-27613 Gitk 参数漏洞
Gitk Abitryary 代码执行漏洞 CVE-2025-27614 Gitk Abitryary 代码执行漏洞
Git 恶意 Shell 漏洞 CVE-2025-46334 Git 恶意 Shell 漏洞
Git 文件覆盖漏洞 CVE-2025-46835 Git 文件覆盖漏洞
Git Symlink 漏洞 CVE-2025-48384 Git Symlink 漏洞
Git 协议注入漏洞 CVE-2025-48385 Git 协议注入漏洞
Git 凭据帮助程序漏洞 CVE-2025-48386 Git 凭据帮助程序漏洞

版本 17.14.7

发布日期:2025 年 6 月 23

热门 bug 修复 来自社区
GitHub Copilot 聊天错误:“无法分析 ov”- 持久问题 反馈单
修复了在编译器选项和路径之间用空格引用包含路径时出现的问题,路径中的文件都不会显示在包含完成列表中。 反馈单
17.14 版开发人员 PowerShell 中未检测到转义 反馈单
已更新到 VS 17.14 - NCrunch 5.10.0.7 中断 反馈单
无法在 VS2022 17.14.0 预览版 1.1 中生成 VB.NET 应用 反馈单
实现了多项更改,以提高内联完成的用户体验和辅助功能。

版本 17.14.6

发布日期:2025 年 6 月 17

热门 bug 修复 来自社区
VS 17.14 回归:具有 x64 发布配置的 ASAN 错误的 codegen 反馈单
清理器覆盖率生成错误的 Codegen 反馈单
修复了 Razor 格式有时似乎对特定语法模式或配置不执行任何作的问题。 反馈单
运行单元测试后,GitHub Copilot 代理预览版无法运行终端命令 反馈单
加载 EventTrigger 的路由事件时,Storyboard 无法按名称找到目标元素。 反馈单
修复了 boost::p arser 中的误报语法错误 反馈单
Copilot 无法看到.xaml.cs和 .xaml 之间的差异 反馈单
MSVC AddressSanitizer 现在支持将动态链接的通用 C 运行时与静态链接的 VCRuntime(通常用于插件等软件)的项目配合使用。 反馈单
修复了导致编译器崩溃的复杂特征检测代码的问题。 反馈单
Copilot 助手“run_build”失败 反馈单
修复了使用导航按钮编辑下一个编辑建议的菜单项时的崩溃。
修复了具有修改处理器相关性的多套接字计算机上的 ConcRT (并发运行时)初始化。

版本 17.14.5

发布日期:2025 年 6 月 10

热门 bug 修复 来自社区
在命中断点之前,通过 SSH 远程调试器挂起 反馈单
已处理的安全咨询 CVE Descritpion
Visual Studio 远程代码执行漏洞 CVE-2025-47959 在 Visual Studio 中对命令(“命令注入”)中使用的特殊元素进行不当的中和化允许授权攻击者通过网络执行代码。
.NET 和 Visual Studio 远程代码执行漏洞 CVE-2025-30399 .NET 和 Visual Studio 中的不受信任的搜索路径允许未经授权的攻击者通过网络执行代码。

版本 17.14.4

发布日期:2025 年 6 月 3

热门 bug 修复 来自社区
在 Razor 的 PageModel 上找不到类型或命名空间错误 反馈单
VS 2022 17.14 p1.1 无法完成生成。 “错误 D8040:创建或与子进程通信时出错。 反馈单
#include 完成不再建议路径中的文件或文件夹 反馈单
Visual Studio 一直要求我重新输入凭据 [expansion.microsoft.com 租户被阻止] 反馈单

版本 17.14.3

发布日期:2025 年 5 月 28

热门 bug 修复 来自社区
使用 RFX_Date 存储 COleDateTime 时出现问题 反馈单
缺少 Android 启动选项 反馈单
当我在 Unity 中创建新脚本并再次打开 VS 进行编辑时,所有以前固定的选项卡都会消失。 反馈单
每次更改代码中的某些内容(Xamarin) 时,我必须重启 VS 反馈单
更改 git 分支会导致关闭打开的文件 反馈单
“快速作和重构 > 创建定义”在 17.14 更新(UE5) 中不起作用 反馈单

版本 17.14.2

发布时间:2025 年 5 月 22

热门 bug 修复 来自社区
修复了以下问题:如果通过 UNC 路径打开包含C++项目的解决方案,VS 将崩溃。 反馈单

版本 17.14.1

发布日期:2025 年 5 月 21

热门 bug 修复 来自社区
由于内部错误,功能“xxx”当前不可用。 System.NotSupportedException:不支持给定路径的格式。 反馈单
修复了为 Microsoft 应用商店创建上传包时发生的问题。 反馈单
修复了 Razor 源生成器导致其无法运行的问题 System.ArgumentOutOfRangeException
修复了在完成初始化之前关闭资源文件编辑器时发生的挂起的问题。

从整个团队中,感谢你选择 Visual Studio! 有关最新更新、资源和新闻,请查看 Visual Studio 中心 并保持联系。

祝你编码愉快!
Visual Studio 团队


Note

此更新可能包括单独许可的新 Microsoft 或第三方软件,如第三方通知或其随附许可证中所述。