Visual Studio 2019 for Mac 版本 8.7 发行说明
开发人员社区 | 系统要求 | 兼容性 | 可分发代码 | 文档 | 博客 | 维护
有关系统要求的信息,请参阅 Mac 系统要求和 Mac 平台目标以及兼容性指南。
要详细了解其他相关下载,请参阅下载页。
Visual Studio 2019 for Mac 中的新增功能
Visual Studio 2019 for Mac 版本
- 2020 年 10 月 27 日 - Visual Studio 2019 for Mac 版本 8.7.9
- 2020 年 9 月 21 日 - Visual Studio 2019 for Mac 版本 8.7.8
- 2020 年 9 月 15 日 - Visual Studio 2019 for Mac 版本 8.7.7
- 2020 年 9 月 10 日 - Visual Studio 2019 for Mac 版本 8.7.6
- 2020 年 9 月 8 日 - Visual Studio 2019 for Mac 版本 8.7.5
- 2020 年 8 月 25 日 - Visual Studio 2019 for Mac 版本 8.7.4
- 2020 年 8 月 18 日 - Visual Studio 2019 for Mac 版本 8.7.3
- 2020 年 8 月 13 日 - Visual Studio 2019 for Mac 版本 8.7.2
- 2020 年 8 月 11 日 - Visual Studio 2019 for Mac 版本 8.7.1
- 2020 年 8 月 5 日 - Visual Studio 2019 for Mac 版本 8.7
Visual Studio 2019 for Mac 博客文章
可从 Visual Studio 博客获取来自 Visual Studio 工程团队的官方产品见解。 有关 Visual Studio 2019 for Mac 发布的详细信息,可参阅以下文章:
版本主要变化
- 现支持将新的开放 API 和 gRPC 服务引用添加到 .NET Core 项目。
- 添加了对单击右键运行单元测试的支持。
- Visual Studio Tools for Unity 包括三个新的诊断,且在 Unity 重新生成解决方案和项目时支持持久性解决方案文件夹。
- 我们解决了 IDE 中大量存在的现有缺陷和用户报告的问题。 请使用开发者社区门户继续与我们分享你的反馈。
- Visual Studio for Mac 8.7 支持在 macOS Big Sur 开发者预览版上运行。 如果你已经在 Big Sur 上且无法使用更新程序,请访问 Visual Studio for Mac 网站并下载安装程序。
已知问题
请参阅已知问题部分。
反馈和建议
我们期待你的宝贵意见和建议! 可通过 Visual Studio for Mac IDE 中的报告问题选项报告问题。 可在开发人员社区门户中跟踪自己的反馈,包括建议。
发行说明
Visual Studio 2019 for Mac 版本 8.7.9 (8.7.9.9)
发布日期:2020 年 10 月 27 日
Web 和 Azure
- 已将 .NET Core 更新到 3.1.403 和 2.1.811。
Xamarin
- 添加了对 Xcode 12.1 的支持。
Visual Studio 2019 for Mac 版本 8.7.8 (8.7.8.4)
发布日期:2020 年 9 月 21 日
Xamarin
- 添加了对 Xcode 12 的支持并更新了 Xamarin SDK。
- 添加了对在 Info.plist 编辑器中将一个颜色设置为主题色的支持。
Visual Studio 2019 for Mac 版本 8.7.7 (8.7.7.10)
发布日期:2020 年 9 月 15 日
IDE 平台
项目系统
- 修复了从项目文件中删除 ProjectGuid 的问题。
Web 和 Azure
- 修复了 ASP.NET Core 2.1 Web 应用程序基架设置失败的问题。
Visual Studio 2019 for Mac 版本 8.7.6 (8.7.6.2)
发布日期:2020 年 9 月 8 日
Web 和 Azure
- 更新了 .NET Core SDK(3.1.402 SDK 和 2.1.22 运行时)。
Visual Studio 2019 for Mac 版本 8.7.5 (8.7.5.19)
发布日期:2020 年 9 月 8 日
项目系统
- 修复了无法加载 Uno 解决方案的问题。
Shell 和工具
- 提高了性能和可靠性。
Web 和 Azure
- 解决了创建新的 Azure Functions 项目时缺少初始模板的问题。
Xamarin
- 解决了在 Xcode 设计器中使用情节提要时出现多个不需要的弹出窗口的问题。
- 解决了输出口代系的问题
- 解决了 Visual Studio 和 Xcode 同步保持更新注册属性的问题。
- 解决了热重载中的索引超出范围错误
- 解决了使用 Xcode 接口生成器打开情节提要失败的问题。
Visual Studio 2019 for Mac 版本 8.7.4 (8.7.4.38)
发布日期:2020 年 8 月 25 日
Shell 和工具
- 解决了导致“报告问题”对话框中焦点顺度不合逻辑的问题。
- 解决了阻止 VoiceOver 和屏幕阅读器激活“管理 NuGet 包”对话框中的链接的问题。
- 解决了在安装了较旧的 .NET Core SDK 的情况下大型解决方案无法还原的问题。
- 增加了帐户对话框中所选帐户的颜色对比度。
Web 和 Azure
- 解决了添加到 launchSettings.json 的新的启动配置文件不在项目选项对话框中显示的问题。
- 解决了取消项目选项对话框中的更改不会撤消运行配置更改的问题。
- 解决了 OpenAPI/gRPC 配置对话框不是模式的问题。
- 解决了 OpenAPI 服务引用对话框在引用被添加后会重新打开的问题。
- 解决了阻止 ASP.NET Core 项目在集成终端中运行的问题(即使在“运行配置”设置中设为在集成终端中运行,此问题也导致无法实现)。
- 解决了默认的运行配置在主工具栏中显示两次项目名称的问题。
Xamarin
- 提高了整体稳定性
Visual Studio 2019 for Mac 版本 8.7.3 (8.7.3.13)
发布日期:2020 年 8 月 18 日
Shell 和工具
- 解决了在解决方案板中更改属性后,属性板未正确更新的问题。
- 解决了使用十六进制编辑器打开会在 VS Code 中打开(而不是在十六进制编辑器中打开)的问题。
Xamarin
- 提高了整体稳定性
- 解决了使用 Xamarin.Android SDK 11.0.0.3 调试 Android 应用的问题
Visual Studio 2019 for Mac 版本 8.7.2 (8.7.2.4)
发布日期:2020 年 8 月 13 日
Web 和 Azure
- 更新了 .NET Core SDK(3.1.401 SDK 和 2.1.21 运行时)。
Visual Studio 2019 for Mac 版本 8.7.1 (8.7.1.15)
发布日期:2020 年 8 月 11 日
8.7.1 中的 bug 修补程序
Shell 和工具
- 解决了 .NET Core 3.1.400 中依赖项文件夹信息不正确的问题。
- 解决了“属性”对话框中多个 UI 元素没有 VoiceOver 用户名称的问题。
Unity
- 解决了以下问题:从 Unity 打开时显示“正在加载…”,一直到退出并重新打开。
版本控制
- 解决了在使用 Git 时导致出现
doesn't point at a valid Git repository or workdir.
错误消息的问题。
Xamarin
- 解决了阻止 macOS Big Sur 上的 Xamarin 开发人员编译和运行其项目的问题。
Visual Studio 2019 for Mac 版本 8.7 (8.7.0.2037)
发布日期:2020 年 8 月 5 日
注意
此版本的 Visual Studio for Mac 现在支持在 macOS Big Sur 开发者 beta 版本上运行。 如果你已经在 Big Sur 上且无法使用更新程序,请访问 Visual Studio for Mac 网站并下载安装程序。
新增功能
开放 API 和 gRPC 客户端代系
Visual Studio for Mac 现支持基于 OpenAPI 或 gRPC 服务生成 API 客户端。 这包括能够根据本地文件或 URL 生成客户端、管理服务引用,并在服务更改时重新生成客户端代码。
若要添加对 OpenAPI 或 gRPC 服务的新引用,请右键单击“解决方案”板中的“连接的服务”节点,然后选择“打开服务库” 。

打开“连接的服务库”后,可添加 OpenAPI 或 gRPC 引用。

单击任一选项会启动一条提示,让你能够通过文件路径或 URL 输入服务引用。
生成 gRPC 客户端时,还可选择是否要生成以下客户端类类型:
- 客户端
- 服务器
- 客户端和服务器
- 仅消息(用于根据消息属性生成强类型的类,不生成服务器或客户端代码)
生成 OpenAPI 客户端时,可指定命名空间和附加选项,它们传递到代码生成器中。
代码生成基于 dotnet-grpc
和 dotnet-openapi
命令行工具。
生成服务引用后,可在“连接的服务库”中查看和修改它,如下所示。

要详细了解如何使用所生成的 OpenAPI 客户端,请参阅 NSwag 入门教程。
要详细了解如何使用所生成的 gRPC 客户端,请参阅在 ASP.NET Core 中创建 gRPC 客户端和服务器教程。
单击右键运行单元测试
现在,开发人员在编辑包含单元测试的 C# 类时,在测试类或方法的主体中单击右键即可访问用于运行和调试测试的选项。

除了在编辑器中单击右键之外,还可以使用键盘快捷方式运行一些新命令。 如果使用的是 Visual Studio for Mac 键绑定,则命令如下所示:
- 运行测试:
⌘T
- 调试测试:
⌘⌥T
有关更改键盘快捷方式的详细信息,请参阅 Visual Studio for Mac 中的默认键盘快捷键,有关新单元测试功能的更多信息,请参阅 Visual Studio 博客。
Visual Studio Tools for Unity
- 添加了在 Unity 重新生成解决方案和项目时对持久性解决方案文件夹的支持。
- 我们增加了以下诊断:
Bug 修复
调试器
- 解决了调试程序单步执行操作导致 Visual Studio 挂起的问题。
- 我们引入了新逻辑,用于计算调试器面板中项的宽度和位置。
- 修复了阻止名称/值单元格进入编辑模式(除非准确单击文本)的问题。
- 提高了展开工具提示的速度
- 修复了当用户在编辑器边距中单击空白行时在断点板中创建断点的问题。
- 修复了阻止用户关闭崩溃消息的问题。
- 修复了工具提示行为影响用户工作的问题。
- 修复了单步执行时可能导致 UI 挂起的问题。
- 修复了调试结束后仍存在异常页的问题。
- 修复了在添加或删除代码行时,断点板可能会与文本编辑器中的行号不同步的问题。
- 修复了可能导致调试器在错误语句上中断的问题。
- 修复了有时导致工具提示在完成调试后仍显示的问题。
- 修复了工具提示可能会显示非数组对象的数组长度的问题。
- 修复了导致 StackTracePad.UpdateAsync 空引用错误写入日志的问题。
- 修复了在工具提示值中导致错误换行的问题。
项目系统
- 修复了符号链接文件夹中的文件不是基于更改生成的问题。
- 修复了添加新文件/资产导致“保存...”需要超过一分钟的问题。
- 修复了保存消息永久显示且无法继续的问题。
- 修复了插入符号处用于运行、调试和选择单元测试的键绑定不工作的问题。
- 修复了单击“运行”按钮可能要求你重新生成项目(即使项目刚刚已编译也是如此)的问题。
- 修复了多目标顺序不正确的问题。
- 修复了用户无法关闭项目的问题。
正在测试
- 解决了单元测试会复制命名空间的问题。
- 解决了导致某些单元测试不加载的问题。
- 修复了导致 xUnit 测试显示完整的命名空间而不是方法名称的问题。
- 修复了单元测试板中的测试节点错误的问题。
- 修复了使用 int.MaxValue 的 NUnit TestCase 时,单元测试板未正确按命名空间对测试进行分组的问题。
- 修复了 VSMac 测试资源管理器损坏的问题。
- 将对单元测试标记的支持重置于编辑器内。
Shell 和工具
- 我们将 NuGet 更新到 5.7 RTM。
- 我们修复了属性面板内键盘焦点的问题。
- 我们修复了 Visual Studio 在 macOS Big Sur 上崩溃的问题。 如果你已经将 macOS 升级到 Big Sur 并且无法运行 VS for Mac,请通过 https://visualstudio.microsoft.com/vs/mac/ 下载最新的安装程序以安装最新的稳定版本,然后从预览通道安装此预览版。
- 进行了修复,处理了稳定性和性能方面的一些问题。
- 添加了一个缺失的键绑定,当使用 VS Code 键绑定方案时可用它在打开的文件(选项卡)之间移动。
- 解决了在项目创建期间可能再次进入开始窗口,从而导致所有命令不可用的问题。
- 解决了开始窗口中命令损坏的问题。
- 解决了使用 Directory.Build.props 时未在 Visual Studio for Mac 中发现 mstest 测试的问题。
- 改进了存在冲突的键在首选项中的显示方式。
- 解决了几个辅助功能问题。
- 解决了混合键绑定方案中切换/撤销注释命令绑定方面的问题。
- 解决了在源文件之间切换焦点时“文档大纲”板中的排序按钮重置的问题。
- 解决了用 Ctrl+Tab 在文件之间切换时卡出的问题。
- Png 文件现默认使用预览程序打开,而不是用十六进制编辑器打开。
- 改进了文件路径在全局搜索中显示的方式。
- 解决了显示某些类的声明会导致显示许多程序集文件这一问题。
- 向解决方案板添加新文件夹时,它现将默认展开。
- 修复了在键绑定首选项中阻止将命令映射到 ⌃ (Tab) 的问题。
- 修复了在编辑器中打开 .sln 文件后,解决方案在“最近使用的项目”列表中不再可用的问题。
- 修复了 Nuget 排序 Beta/Alpha 错误的问题。
源代码编辑
- 解决了在多个文件打开时键入速度非常缓慢的问题。
- 解决了“文档大纲”视图对区域和函数来说都完全不更新的问题。
- 解决了出现 #region 时文档大纲显示错误的层次结构的问题。
- 解决了将文件重命名为“重构”会导致 Visual Studio 冻结的问题。
- 解决了尝试在 Visual Studio 中打开 CSS 文件会导致冻结的问题。
- 解决了 C# 的“文档大纲”板从不反映上次编辑更改的问题。
- 修复了 C# 编辑器中的以下问题:IntelliSense 从不显示调用站点关于当前参数的文档。
- 修复了重命名变量时会重复最后两个字符的问题。
适用于 Unity 的工具
- 修复了一个 bug:如果在调试时设置了断点,就不会命中这些断点。
- 修复了一个问题:检查枚举值的相等性未返回正确的结果(监视、立即、条件断点)。
- 修复了
USP0004
、USP0006
和USP0007
抑制器的以下规则:为所有使用 SerializeField 属性装饰的字段禁止IDE0044
(只读),IDE0051
(未使用)、CS0649
(从未指定)。 为扩展Unity.Object
的所有类型的公共字段禁止CS0649
(从未指定)。 - 修复了
UNT0014
的泛型类型参数检查。 - 修复了在“添加 Unity 消息”对话框中搜索后导致选定的 Unity 消息被取消选中的问题。
版本控制
- 解决了版本控制选项卡不显示的问题。
- 解决了使用 SSH 克隆失败并出现错误的问题。
- 解决了在删除 .git 文件夹时版本控制系统中断的问题。
- 解决了无法在 VS Comm 中通过 SSH 访问远程存储库的问题。
- 解决了使用版本控制时导致挂起的问题。
- 解决了当远程包含本地不存在的更改时进行推送会花费很长时间,最终中止并出现错误的这一问题。
Web 和 Azure
- 更新了 .NET Core SDK(3.1.302 SDK 和 2.1.20 运行时)。
- 解决了实体框架 (CRUD) 基架方面的一个问题,其中网页样式未正确加载。
- 解决了 .NET Core 5 Web 应用程序基架设置失败的问题。
- 解决了尝试发布时找不到订阅的问题。
- 解决了无法构建 React.js 和 Redux 项目的问题。
- 解决了无法打开已生成的服务引用代码的问题。
- 解决了构建 Angular 项目未能找到 clang++ 的问题。
- 解决了 Blazor Web 程序集应用项目创建失败并出现错误的问题。
- 解决了“添加 gRPC 服务引用”对话框无响应的问题。
- 现支持将新的开放 AI 和 gRPC 服务引用添加到 .NET Core 项目。
- 解决了导致无法在 VisualStudio for Mac 上加载解决方案的问题。
- 解决了加载时重写 launchsettings.json 文件的问题。
- 解决了更改 Web 应用运行配置不会保存到 launchsettings.json 的问题。
- 解决了阻止将新的运行配置添加到 ASP.NET Core 应用的问题。
- 解决了在某些情况下,IntelliSense 会错误地对 .razor 文件中的有效代码加下划线的问题。
- 修复了“具有实体框架的 API 控制器”基架生成“具有实体框架的 MVC 控制器”的问题。
Xamarin
- 支持 Xcode 11.5 和 11.6。
- 将 Xamarin.Forms 模板更新到了 4.6.0 SR 5。
- 解决了远程生成主机中导致可靠性降低的问题。
- 解决了上下文菜单操作未在 Android 设计器中本地化的问题。
- 解决了用户报告的一些崩溃故障。
- 修复了几个实例,在这些实例中,VoiceOver 会阅读向导模板页面上的元素标签两次。
- 解决了情节提要资源标记被删除的问题。
- 解决了 Visual Studio for Mac 不为情节提要生成视图控制器文件的问题。
- 修复了一些与 Xamarin.mac 相关的情节提要错误。
- 修复了“Apple 开发者帐户”对话框中的“展开/折叠”按钮的颜色对比度太低的问题。
已知问题
下面列出了 Visual Studio 2019 for Mac 版本 8.7 中存在的所有已知问题:
- 在极少数情况下,除了 .NET Core 3.1.300 SDK,任何内容都可能是最新的。 如果进入此配置,并使用更新程序更新到 .NET Core 3.1.300,则在重新启动 IDE 之前,更新 .NET Core SDK 的通知将不会消失。