Visual Studio 2017 15.4 版发行说明

Last Update: 2017/12/4

开发人员社区 | 系统要求 | 兼容性 | 可分发代码 | 许可条款 | 博客 | 已知问题


注意

如果正在从一个非英语的语言版本访问此页,并想要查看最新内容,请访问此“发行说明”页(英文版)。

本文介绍 Visual Studio 2017 的最新发行信息。 单击按钮下载最新版本。

有关安装帮助,请参阅我们安装脱机安装文档。

反馈

我们期待你的宝贵意见和建议! 对于这些问题,可通过安装程序或 Visual Studio IDE 右上角的“报告问题”选项告知我们。 Feedback Icon 图标位于右上角。 可以在 Visual Studio 开发者社区中跟踪问题,也可在其中提问和找到答案。 也可以通过 UserVoice 提出产品建议或通过实时聊天客户支持获取免费的安装帮助。

现在需要专业支持? 请参阅可用的支持选项

发布历史记录

可在 Visual Studio 2017 发行节奏文档中详细了解我们如何发行,了解如何识别不同版本。

已知问题

请参阅已知问题部分。


发布日期:2017 年 11 月 14 日 - Visual Studio 2017 15.4.4 版

此版本中已修复的主要问题

这些是已在此版本中解决的客户报告的问题:

.NET Core 和 ASP.NET Core 安全建议

Microsoft 已发布面向 .NET Core 和 ASP.NET Core 的安全建议。 有关详细信息,请参阅 .NET CoreASP.NET Core 存储库中的对应公告。 请注意以下信息:

  • CVE-2017-8585 格式不正确的证书可能导致拒绝服务:.NET Core 1.0、1.1 和 2.0 中存在安全漏洞,格式不正确的证书或其他 ASN.1 格式的数据可能在 Linux 和 macOS 上引发无限循环,导致拒绝服务。 建议系统管理员将 .NET Core 运行时更新到 1.0.8、1.1.5 或 2.0.1 版本。 建议开发人员将 .NET Core SDK 更新到 2.0.3 或 1.1.5 版本。

  • CVE-2017-8700 CORS 绕过可能导致信息泄露:ASP.NET Core 1.0 和 1.1 中存在安全漏洞,跨源资源共享 (CORS) 可被绕过,造成信息泄露。

  • CVE-2017-11879 开放重定向可能导致特权提升:ASP.NET Core 2.0 中存在安全漏洞,其中存在开放重定向,可能导致特权提升。

  • CVE-2017-11770 拒绝服务漏洞:ASP.NET Core 1.0、1.1 和 2.0 中存在安全漏洞,当通过 Windows Http.Sys 托管该应用程序时,Windows Http.Sys 中格式不正确的请求可能导致拒绝服务。

使用 ASP.NET Core 1.0、ASP.NET Core 1.1 和 ASP.NET Core 2.0 创建的新项目现在将使用包含以上安全更新的包版本。 对于现有项目,用户可以使用“管理 NuGet 程序包”对话框将包更新到较新版本。


发布日期:2017 年 11 月 8 日 - Visual Studio 2017 15.4.3 版

此版本中已修复的主要问题

这些是已在此版本中解决的客户报告的问题:

  • 已添加对 Xcode 9.1 和 iOS 11.1 的支持。
  • 已还原使用非英语语言时的 Python 项目菜单。

发布日期:2017 年 10 月 31 日 - Visual Studio 2017 15.4.2 版

此版本中已修复的主要问题

这些是已在此版本中解决的客户报告的问题:

  • 15.4 更新会中断针对 VS 的 Python 工具
  • 改进了包含多个分部类的大型 Visual Basic 项目的 IntelliSense 性能。
  • 修复了客户在新建角色服务并尝试通过客户端连接这些服务时收到 SerializationException 的问题。
  • 解决了加载 Xamarin.Andorid 项目时出现的 Visual Studio 响应问题。
  • 解决了 Xamarin.Android 应用程序(针对 Android Framework 版本 v8.0)中 Build.getSerial 和 BuildSerial 之间的冲突。
  • 解决了 Xamarin.iOS 无法加载资产目录的问题。

发布日期:2017 年 10 月 19 日 - Visual Studio 2017 15.4.1 版

此版本中已修复的主要问题

这些是已在此版本中解决的客户报告的问题:


发布日期:2017 年 10 月 9 日 - Visual Studio 2017 15.4.0 版

摘要:此版本中的新增功能

  • 新的安装程序启动横幅可在安装成功时通知你。 我们添加了在安装结束时出现的新警告消息,其中包含开发者社区的链接,可提供其他帮助。
  • 我们改进了 XAML。 现可编辑或删除 XAML 资源,并添加 ControlTemplates。
  • 通用 Windows 平台开发工作负载现在附带 Windows 10 Fall Creators Update SDK
  • 我们向 Windows Fall Creators Update 添加了 .NET Standard 2.0 支持。
  • Windows 应用程序打包项目可提供新的项目模板,有助于将所有 Windows 项目打包到 .appx 容器中。
  • .NET Core 2.0 默认包含在 Web 开发和 .NET Core 工作负载中。
  • 我们增强了 Live Unit Testing 功能,以增加对 MSTest 版本 1 框架的支持功能并提高此功能的可发现性。
  • 你可直接在具有 Xamarin Live 的 iOS 和 Android 设备上部署、测试和调试应用。
  • 增加了对 CMake 3.9 和更灵活的 CMake 项目结构的支持。
  • 现可从 CMake 项目面向 Linux。 使用现有 CMake 基本代码作为解决方案,无需将其转换为 VS 项目。
  • 我们改进了 Visual Studio Tools 中的 Unity 支持,并在新运行时下添加了“集指令指针”功能。
  • Android SDK 现安装到了一个专用位置。
  • R 工具现在具有对 Linux 远程处理和 RMarkdown(包括实时编辑、大括号匹配和代码补全)的支持。

此版本中已修复的主要问题

这些是已在此版本中解决的客户报告的问题:

Dev Community Votes  从解决方案资源管理器删除文件不会删除实际的文件。
Dev Community Votes  复制/粘贴造成 VS 使用弹出项“格式化文本”挂起。
Dev Community Votes   “线程”窗口打开时,VS2017 15.3 在调试中冻结。
Dev Community Votes  Visual Studio 会冻结,并在冻结期间及冻结后会显示忙碌通知。
Dev Community Votes  自动补全在错误的地方添加括号。
Dev Community Votes  两次在 IDE 中打开相同的文件会导致弹出的对话框,并显示“此文档由另一个项目打开”的消息。
Dev Community Votes   测试资源管理器忘记“默认进程架构”和“保持测试执行引擎运行”的设置。
Dev Community Votes  损坏的文件导致 Visual Studio 2017 更新安装失败。
Dev Community Votes  浏览联机扩展将引发“GZip 标头中的幻数不正确。”错误。
Dev Community Votes   解决方案生成失败,并附有 docker 撰写错误。


详细信息:此版本中的新增功能

Visual Studio 改进

设置和安装程序

  • 我们在安装程序中添加了一个 启动横幅,以表明 Visual Studio 已成功安装(图 1)。

Successful installation with new launch banner

(图 1)显示安装成功的新启动横幅

  • 安装程序现使用自动代理检测来进行下载。
  • 如果非关键组件(不直接影响 Visual Studio IDE 的组件)故障,安装程序现将显示警告而不是故障。 更改后,可更清楚的表明即使有需要解决和纠正的问题,Visual Studio 仍可正常使用。
  • 创建脱机布局使用较短的路径,允许管理员在更深层的网络文件夹层次结构中托管脱机安装。
  • 单个包安装失败或出现下载问题(图 2)时,我们会在安装结束时显示 消息。 此消息中含有开发者社区的链接,可提供更多帮助,以便你解决可能影响计算机完整安装 Visual Studio 的问题。

Error dialog with potential solutions

(图 2)含可行解决方案的错误对话框

  • 我们解决了更新 Visual Studio 后安装程序在“添加或删除程序”中错误设置安装日期/时间的问题。

编辑器

  • 我们修复了一个屏幕阅读器的问题,即:Freedom Scientific 的 JAWS 屏幕阅读器无法在 Visual Studio 编辑器中使用 IntelliSense。
  • 我们向核心 Visual Studio 产品添加了热门 Productivity Power Tools 导航功能“按住 Ctrl 并单击转到定义”。
    • 对于支持的语言(目前有 C#、VB 和 Python,未来的版本会支持更多语言),按住 Ctrl 键并单击 Visual Studio 编辑器中的符号,然后导航到其定义。
    • 如果希望保留之前“按住 Ctrl 并单击”的选词操作,可通过“工具” > “选项” > “文本编辑器” > “常规” > “使鼠标单击可执行转到定义”来控制功能的主要用途,可选择其他修改键或按需关闭该功能。

扩展性

我们修复了已安装的扩展未在 Visual Studio 中显示更新通知,也未自动更新这一 bug。

轻量级解决方案加载

我们解决了在启用轻型解决方案加载情况下,打开解决方案时导致生成失败的 bug。

实时单元测试

  • Live Unit Testing 提供对三个常用单元测试框架的支持:xUnit、NUnit 以及 MSTest 版本 1 与 MSTest 版本 2。
  • 如果尚未启用 Live Unit Testing,Visual Studio IDE 将在打开使用现有单元测试的解决方案时显示黄色条框。 黄色条框提供有关功能、如何启用以及所需系统必备组件的详细信息。
  • 任务状态中心显示后台处理通知,因而可以在使用 Live Unit Testing 的同时轻松解决关键问题。
  • 我们将包含/排除在右键单击笔势名称上的名称从“Live Test Set – 包含/排除”更改为“Live Unit Testing 包含/排除”。 我们也删除了菜单栏的“重置清理”并将它移动到了“工具/选项/删除永久性数据”下。
  • 我们进行了多次修复,以便系统可以在未加载项目时进行检测并避免 Live Unit Testing 故障。 我们添加了生成性能改进的功能,以在系统知道项目文件未进行任何更改时避免重新计算 MSBuild 项目。

适用于通用 Windows 平台开发的工具

Visual Studio 2017 15.4 版对适用于通用 Windows 平台开发的工具进行了大幅更新。 在下方了解新增功能!

Windows Fall Creators Update 支持

Visual Studio 2017 15.4 版为使用 Windows Fall Creators Update SDK 的开发人员提供了一流的支持。 使用 Visual Studio 2017 15.4 版安装通用 Windows 平台开发工作负载时,将自动获取 Windows 10 Fall Creators Update SDK。

已更新适用于面向 Windows Fall Creators Update SDK 的 UWP 项目的 XAML 设计器

我们对适用于面向 Windows Fall Creators Update SDK 的 UWP 项目的 XAML 设计器进行了大幅更新,优先改进了性能、可靠性,并增加了呈现 Fluent 设计项目的功能。 请查看 Visual Studio XAML 设计器更新博客文章以获取更多详细信息。

请注意:除非正在生成面向 Windows Fall Creators Update 的 UWP 应用程序,否则 XAML 设计器体验不会发生改变。

XAML“编辑并继续”改进

现可使用 XAML“编辑并继续”编辑或删除 XAML 资源。 此外,还可添加 ControlTemplates。 若要使用这些新功能,请确保面向的是 Windows Fall Creators Update SDK 且正在运行使用最新 Windows Fall Creators Update 的应用程序。

.NET Standard 2.0 支持

Windows Fall Creators Update 为 UWP 开发提供 .NET Standard 2.0 支持。 为了利用使用 .NET Standard 2.0 的新 API,需要将应用程序的最低版本目标设置为 Windows Fall Creators Update SDK。 随后即可直接从 UWP 应用程序引用 .NET Standard 2.0 NuGet 包、类库和 API。

请注意,支持 .NET Standard 2.0 的某些库可能无法正常工作,或者可能使用 UWP 应用程序进行其他步骤操作。 具体而言,这可以是使用 .NET Native 编译的 UWP 应用程序的事例,其具有带反射的已知限制。 如果在测试期间发现此事例,我们建议与库所有者联系,并询问有关可能的解决方法或修补程序。 其中一个示例是 Entity Framework Core 2.0 NuGet 包,当前与 UWP 有关的一些已知的问题在即将发布的修补程序版本中将得到解决(有关详细信息请参阅受 EF core 支持的 .NET 实施的相关文档)。

Windows 应用程序打包项目

Visual Studio 2017 版本 15.4 提供了新的项目模板,有助于将所有 Windows 项目打包到 .appx 容器中,从而以现代化方式将应用分发或提交到 Windows 应用商店。

若要开始使用 Windows 应用程序打包项目,请依次转到“文件” > “新建” > “项目”,然后在“Visual C#” > “Windows 通用节点”下选择新的“Windows 应用程序打包项目”模板(图 3)。

Windows Application Packaging Project

(图 3)Windows 应用程序打包项目**

在新项目中,可通过右键单击“解决方案资源管理器”中的“应用程序”节点,并选择“添加引用”来添加对现有 Windows 项目(如 WPF、WinForms 或 MFC)的引用。 随后即会出现许多你熟悉的现有 UWP 工具,例如打包、清单编辑和存储关联。

Web 开发工具

  • .NET Core 2.0 在安装期间可用,且默认包含在 Web 开发和 .NET Core 工作负载中。
  • 现支持 Razor 页面基架。
  • 可发布到 Azure 容器注册表和 Docker 中心等容器注册表。
  • Azure 工作负载中包含 Azure Functions 工具。
  • 发布 Azure Web 作业时,可使用 cron 表达式将其作为触发 Web 作业发布。

Visual Studio Tools for Xamarin

通过 Xamarin Live 开发人员可直接在 iOS 和 Android 设备(图 4)上持续部署、测试和调试应用。 下载 Xamarin Live Player(可在 App Store 或 Google Play 中获取)后,可将设备与 Visual Studio 配对,彻底改变生成移动应用的方式。 此功能现已包含在 Visual Studio 中,转到“工具” > “选项” > “Xamarin” > “其他” > “启用 Xamarin Live Player”即可启用此功能。

Xamarin Live Player 配对、部署和实时编辑模式动图。

(图 4)Xamarin Live Player 配对、部署和实时编辑模式动图**

请访问 Visual Studio Tools for Xamarin 发行说明,查看 Visual Studio 2017 15.4 版中的完整更改列表。

Visual Studio Tools for CMake

Visual Studio 2017 15.4 版为 CMake 带来了以下改进:

  • Visual Studio Tools for CMake 随附的 CMake 的版本已升级到 3.9 版本。
  • 现支持包含多个独立的 CMakeLists 的文件夹。

有关详细信息,请签出 15.4 版 CMake 中的新增内容

Linux C++ 改进

现可从 CMake 项目面向 Linux。 这样,即可处理使用 CMake 作为生成解决方案的现有基本代码,而无需将其转换为 VS 项目。 如果基本代码为跨平台代码,则可从 Visual Studio 中同时面向 Windows 和 Linux。 有关详细信息,请参阅适用于使用 CMake 进行 Linux 开发的 Visual C++ 博客文章。

Visual Studio Tools for Unity 改进

  • 我们改进了对 Unity 2017.1 中实验性 .NET 4.6 选项的支持。
    • 在新运行时下添加了对“集指令指针”功能的支持。
  • 在 Unity 2017.2 中我们为用户定义的程序集 (assembly.json) 提供了支持。
  • 我们对调试时的表达式计算进行了全面改进。

Visual Studio 用于 Apache Cordova 的工具

Android SDK 现安装到了 %programdata% 下的一个专用位置。 这样,用户即可在其他地方管理其共享 SDK 安装,不会影响 VS-TACO 方案。

针对 Visual Studio 的 R 工具

支持 RMarkdown:

  • 实时编辑 RMarkdown 文件
  • 在代码块内受到支持的 R 代码格式设置
  • R 代码块中的智能缩进
  • 大括号匹配和代码补全

远程连接:

  • 在之前的版本中添加了 Windows 远程 R 支持
  • 现 Linux 连接也可用

常规改进:

  • Roxygen 着色和 Intellisense
  • R linting(类似于 LintR)
  • R 绘图历历史多重选择
  • 改进了包括 dplyr 管道的多行表达式中的智能缩进
  • 包括查看器和网格的可访问 UI

博客

Developer Tools Blogs 充分利用开发者工具博客网站中提供的见解和建议。

开发者工具博客为用户提供有关所有新版本的最新信息,并且可以通过该博客访问针对大量功能的深入解读文章。 有关 .NET 世界的深入简介,请查看 DotNet 博客。 可以在每个语言区团队博客(C#VBC++F# 等)中找到详细的专业知识。


已知问题

Visual Studio 2017 Known Issues查看 Visual Studio 2017 15.4 版中全部现有已知问题和可用解决办法。

我们一直坚持听取用户的反馈。 若要查找最新问题、记录新问题和投票赞成现有问题,请访问开发人员社区站点。


Visual Studio 2017 发行说明历史记录

Visual Studio 2017 预览版发行说明

The Developer Community Portal请参阅 Visual Studio 2017 15.4 版中已解决的客户所报问题。

Visual Studio 2017 15.3 版发行说明

The Developer Community Portal请参阅 Visual Studio 2017(15.3 版)中已解决的客户所报问题。

Visual Studio 2017(版本 15.2)发行说明

The Developer Community Portal请参阅 Visual Studio 2017(15.2 版)中已解决的客户所报问题。

Visual Studio 2017(版本 15.1)发行说明

The Developer Community Portal请参阅 Visual Studio 2017(15.1 版)中已解决的客户所报问题。

Visual Studio 2017(版本 15.0)发行说明

The Developer Community Portal请参阅 Visual Studio 2017(15.0 版)中已解决的客户所报问题。


返回页首