近日Visual Studio发布v2017.15.9版本,在这个版本中,Visual Studio依旧专注于生产力,性能和错误修复。有许多新功能及新特点,在本文中将详细介绍有关版本更新的相关细节。
本次更新同步提供v2017.15.9版本免费下载
【Visual Studio 2017社区版】 【Visual Studio 2017专业版】 【Visual Studio 2017企业版】
Visual Studio 2017 v15.9中值得注意的新功能摘要
-
现在可以导入和导出安装配置文件,该文件指定了应使用Visual Studio实例安装哪些工作负载和组件。
- 新的符号包格式(.snupkg)改进了NuGet包的调试体验。
- 现在可以在C++ for Enterprise客户中使用调试器中的步骤。
- C++ IntelliSense现在可以响应针对Linux的CMake和MSBuild项目的远程环境变化。
- UWP Desktop Bridge框架包更新,并添加了对ARM64 C++ Native Desktop方案的支持。
- 使用MSVC 15.9编译器添加了对range-v3库的支持。
- 修复了F#编译器和F#工具中的几个错误。
- 语言服务支持新的TypeScript功能,用于语义文件重命名和项目引用。
- 通过更新Vue.js模板并使用Jest框架添加对单元测试的支持来改进Node.js开发。
- 添加了SharePoint 2019项目模板,因此可以将现有的SharePoint 2013和2016项目迁移到SharePoint 2019。
- 适用于Xamarin的Visual Studio Tools现在支持Xcode 10。
- 对Xamarin.Android构建性能进行了改进。
- 为通用Windows平台开发人员添加和改进了功能,包括ARM64支持,最新预览SDK,桌面桥应用程序的更好调试以及XAML Designer改进。
- 对使用经过身份验证的体验进行了实质性改进。
- 现在支持锁定文件,以便为基于PackageReference的项目启用可重复的恢复功能。
- 为NuGet包的新许可证格式添加了支持。
- 在Visual Studio中引入了NuGet客户端策略,使您能够锁定环境,以便只安装可信包。
- 在Visual Studio中使用.NET Core的情况更加可预测。
Visual Studio 2017 v15.9中修复的主要问题
- 无法更改“Find All References”背景颜色。
- Visual C++资源编辑器包加载失败。
- 如果未首先手动保存XAML文件,则VS2017 v15.8 Build无法启动。
- 安装失败造成清单签名验证失败。
- 更新15.8.6打破了安装程序项目的问题。
- 使用箭头键向上滚动会导致Visual Studio向上翻页。
- 更新到15.8.1后,调试时数据提示不显示。
- System.InvalidProgramException:公共语言运行时检测到无效程序。
- 关闭Visual Studio后,解决方案资源管理器不会保持固定状态。
- 编辑器中的导航栏在处理长方法名称时遇到的问题。
- Blend启动时的编辑器包加载失败错误。
Visual Studio 2017 v15.9中新功能的详细信息
安装
我们可以更轻松地在多个Visual Studio安装中保持安装设置的一致性。您现在可以使用Visual Studio Installer导出给定Visual Studio实例的.vsconfig文件。此文件将包含有关已安装的工作负载和组件的信息。然后,您可以导入此文件以将这些工作负载和组件选择添加到另一个Visual Studio安装中。
调试
我们已经添加了使用基于portable-pdb符号包的格式(.snupkg)的支持。以及添加了工具,以便从NuGet.org符号服务器等来源可以轻松使用和管理这些符号包。
C++
- 我们在Visual Studio企业版的C++调试器中添加了“后退”功能。使您可以回到过去某个时间点,以便在之前的某个时间点查看应用程序的状态。
- C++ IntelliSense现在可以响应针对Linux的CMake和MSBuild项目的远程环境变化。在安装新库或更改CMake项目时,C++ IntelliSense将自动解析远程计算机上的头文件,以获得完整、流畅的C++编辑体验。
- 我们更新了UWP Desktop Bridge框架软件包,以匹配所有支持的体系结构(包括ARM64)的Windows应用商店中的最新版本。
- 除了修复60个阻塞错误之外,我们还添加了对带有MSVC 15.9编译器的range-v3库的支持,可在/std:c++ 17/permissive下找到。
- Visual Studio中的零售VCLibs框架包已更新,以匹配UWP Store中的最新可用版本。
- 现在可以为ARM64 C++ Native Desktop方案提供全面支持,包括VC ++ 2017 Redistributable。
- 我们在C++ 17的charconv头文件中实现了to_chars()的最短往返十进制重载。
- 已弃用C++编译器/Gm开关。如果已明确定义,请考虑在构建脚本中禁用Gm开关。或者,您也可以安全地忽略Gm的弃用警告,因为在使用“将警告视为错误”时不会将其视为错误
F#
F#编译器
- 修复了带有byref值的扩展方法可能会改变不可变值的问题。
- 在byref/inref/上改进了重载的编译信息错误outref,而不是显示先前模糊的错误。
- byref现在不允许使用可选类型扩展。因为它们可能先前已声明,但无法使用,这样会导致用户体验混乱。
- 修复了CompareTo在结构元组上与struct tuple的类型等价会导致运行时异常的问题。
- 修复了System.Void在创建.NET Standard类型提供的程序中可能无法找到类型的错误。
- 修复了当部分应用的Discriminated Union构造函数与Discriminated Union带的注释或推断类型不匹配时,可能会发生内部错误的问题。
- 修复了当程序byref或函数部分应用类型可能会在运行时崩溃的问题。
- 修复了byref和引用类型(例如byrefoption)的无效组合在运行时会失败并且不会发出错误消息的问题,现在可以发出。
F#工具
- 解决了在Windows上的文件属性中未显示使用.NET Core SDK构建的F#程序集的问题。现在,您可以通过右键单击Windows上的程序集并选择“属性”来查看此元数据。
- 修复了module global在F#源中使用可能会导致Visual Studio无响应的问题。
- 修复了.NET Framework F#项目的Project Properties中的TargetFramework下拉列表为空的问题。
- 修复了创建一个针对.NET Framework 4.0的新F#项目会失败的问题。
F#开源存储库
- VisualFSharpFull项目现在设置为默认启动项目,无需在调试之前手动设置它。
JavaScript和TypeScript语言服务支持
- 我们添加了重构来修复文件重命名后对文件的引用以及添加了对项目引用的支持,允许您将TypeScript项目拆分为相互引用的单独构建。
- 添加了对TypeScript 3.1的支持。
- 更新了最新的Vue CLI 3.0并改进了Vue.js模板文件中的linting。您还可以使用Jest框架编写和运行单元测试。
SharePoint 2019的支持
添加了新模板,允许您为SharePoint 2019创建项目。您将能够将现有SharePoint项目从SharePoint 2013和SharePoint 2016迁移到新项目模板。
适用于Xamarin的Visual Studio工具
适用于Xamarin的Visual Studio Tools现在支持Xcode 10,它允许您为iOS 12,tvOS 12和watchOS 5构建和调试应用程序。
适用于通用Windows平台开发人员的工具
- 最新的Windows 10 SDK(内部版本17763)作为通用Windows平台开发工作负载中的可选组件包含在内。
- 添加了对通用Windows平台项目以及Windows应用程序包项目模板中创建.MSIX包的支持。
- 现在可以构建ARM64 UWP应用程序。
- 对通用Windows平台应用程序的F5(Build + Deploy)速度进行了改进。
- 开发人员现在可以选择在使用XAML Designer时指定控件显示选项,同时构建面向Windows 10 Fall Creators更新(版本16299)或更高版本的UWP应用程序。
- XAML设计器现在会自动替换回退控件抛出捕获异常的控件,而不是让设计器崩溃。后备控件有一个黄色边框,以便开发人员在设计时更换控件。
- Windows Application Packaging项目现在支持使用Core CLR调试器调试后台进程。
NuGet
NuGet凭证提供商的改进
- Visual Studio、MSBuild、NuGet.exe和.NET现在支持新的Credential Provider插件接口,该接口可以由Azure Artifacts等私有包主机实现。以前,只有NuGet.exe和Visual Studio接受Credential Providers。
- Visual Studio版本(包括Build Tools版本)现在为Azure Artifacts凭据提供程序提供某些工作负载,以便您可以在开发过程中轻松使用Azure Artifacts提要。要使用这些改进,请安装NuGet包管理器或NuGet目标并构建任务组件或.NET Core工作负载。
NuGet包管理器的改进
- NuGet现在可以锁定基于PackageReference的项目的完整包关闭,从而实现包的可重复恢复。
- Visual Studio NuGet管理器UI现在显示使用新许可证格式的许可证信息。
NuGet安全
- 不允许安装未签名的包。
- 根据作者签名定义可信签名者列表。
- 根据存储库签名中的元数据定义受信任的NuGet.org包所有者列表。
Visual Studio的.Net核心工具
从此版本开始,Visual Studio的.NET Core工具现在默认只使用安装在您的计算机上的.NET Core SDK的最新稳定版本。在将来的更新计划中这些工具将仅使用.NET Core SDK。
想要购买Visual Studio正版授权,或者获取更多该产品相关信息的朋友可以点击" "~
标签:
IDE集成开发环境 .NET代码管控工具IDE
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn