版本15.3更新在用戶離線下載時更加人性化,包含了進度顯示,下載出錯可以輸入R,進行下載的重新嘗試,併在當前下載框下繼續下載為完成的作業,結合 --layout 參數的離線文件的檢查和修複,並且在下載的完成後不會自動退出下載框,而是等待任意鍵的輸入。 本次針對15.3版本進行了中文語言的下載,在下載 ...
版本15.3更新在用戶離線下載時更加人性化,包含了進度顯示,下載出錯可以輸入R,進行下載的重新嘗試,併在當前下載框下繼續下載為完成的作業,結合 --layout 參數的離線文件的檢查和修複,並且在下載的完成後不會自動退出下載框,而是等待任意鍵的輸入。
本次針對15.3版本進行了中文語言的下載,在下載速度和穩定性上15.3版本有了更大的進步,中途基本不會遇見下載某個組件包失敗的情況,並且下載完成的檢驗修複比15.2版本更加嚴格,在15.2版本中下載某個組件包不完整的情況下,下載器並不會做嚴格到每個文件的檢查,在新的版本中 --fix 參數的檢查是具有更高的嚴格性的,本次下載了常規組件的中文語言離線包,文件大小為24.2G,另外註意的是其中有一個文件包的文件名長度超出限制,在複製或者移動離線包時這個離線數據包(705kb)時無法移動,在備份文件時需要註意,可以藉助工具進行移動複製,或者藉助下載器在需要創建數據包的目錄下,重新重定向運行離線命令即可。
Visual Studio 2017(版本 15.3)發佈說明
Last Update: 2017/8/14本文包含有關 Visual Studio 2017(版本 15.3)最新發佈的信息。 單擊此按鈕下載。
有關詳細信息,請參閱安裝指南。
反饋
我們期待你的寶貴意見和建議! 可通過安裝程式或 Visual Studio IDE 中的報告問題選項報告問題。 圖標位於右上角。 可在開發人員社區門戶中跟蹤自己的反饋。 如有任何建議,請通過 UserVoice 網站告知我們。
發佈日期:2017 年 8 月 14 日 - Visual Studio 2017(版本 15.3)
- 輔助功能的改進。
- Visual Studio IDE 改進。
- CMake 工具。
- Visual Studio 編輯器
- C++ 語言服務。
- Visual C++ 工具集和庫。
- C# 7.1 語言支持。
- Xamarin。
- .NET Core 和 ASP.NET Core 改進。
- NuGet 改進。
- .NET Framework 4.7。
- 調試與診斷。
- Application Insights。
- Redgate 數據工具。
- Azure Function 工具。
- JavaScript 和 TypeScript。
- Node.js。
- 連接的服務中的 Microsoft Graph 提供程式。
- Python。
- R 工具。
此版本中已修複的主要問題
我們專心聆聽開發人員社區的需求。 此列表提供得票數最高且已在此版本中修複的問題。
安裝 F# 後深色主題載入失敗。
Visual Studio 安裝程式更新導致無限迴圈。
最近項目的列表未正確顯示。
無法向新的自定義配置文件添加名稱。
將 DSL 擴展從 VS 2015 移動到 VS 2017 時出現運行時錯誤。
Try...catch 塊引發“TextBuffer 編輯操作,但另一個編輯正在進行中”錯誤消息。
Chrome 58 中不接受 Visual Studio 自簽名證書。
由於“生成中的所有生成提交必須使用來自同一個項目集合的項目實例”,發佈失敗。
每次啟動 VS 2017 時都會運行“掃描新的和更新的 MEF 組件”,減緩啟動速度。
在本地調試 VS 2017 時頁面載入速度慢。
如果在不使用管理員許可權的情況下運行 VS Community 2017,會出現拒絕訪問錯誤消息。
設置操作失敗。
無法將最近項目從起始頁上的最近列表中刪除。
無法調試 T4 文本模板。
所有新的/現有 HTTPS 網站在 Chrome 中出現證書錯誤
程式集版本更改時不更新 MEF 緩存。
Editorconfig 支持將“charset = utf-8”解釋為帶簽名的 UTF-8
RTM 忽略項目依賴項且生成失敗。
單擊文件選項卡時,Visual Studio 會凍結。
PerfWatson2.exe 阻止擴展安裝超過 1 分鐘。
Web 發佈預覽僅可上傳文件的子集。
調試程式安裝不正確。
版本 15.2 升級丟失視窗佈局設置。
來自 HRESULT: 0xD00000F3 的 System.Runtime.InteropServices.COMException 異常。
C++ 自動完成 Enter
插入新行,而不是完成標識符。
發佈預覽不允許選擇性發佈文件。
SSDT 安裝錯誤:進程無法訪問文件“C:...IntelliTraceCollection.cab”,因為另一進程正在使用它。
生成無法啟動。
Intellisense:無法通過 Tab
操作自動完成。
Visual Studio 2017 在附加到進程期間崩潰。
PerfWatson2.exe 在關閉 VS2017 後會運行幾分鐘,阻止 VSIX/擴展安裝程式。
Node.js 和 Python 安裝失敗。
詳細瞭解版本 15.3 中已解決的客戶所報問題。
此版本中的新增功能
輔助功能的改進
我們解決了此版本中的 1700 多個輔助功能問題,使 Visual Studio 比以往任何時候都更容易訪問。
-
現可訪問“藍(額外對比度)”主題(圖 1),該主題對某些顏色進行了微調,使編碼時想使用高一點的對比度的用戶感到顏色對比更加舒適
(圖 1)“藍(額外對比度)”主題 -
現可藉助 Visual Studio 編輯器,通過新的“顯示行註釋”命令集發現併在文本修飾之間導航。 可在編輯器上下文菜單(圖2)中找到該新功能。 請參閱 Visual Studio 編輯器部分,瞭解詳細信息。
(圖 2)顯示行註釋
Visual Studio IDE 的改進
- 在“幫助”菜單下添加了“鍵盤輔助功能”菜單命令。 這為獲得有關輔助功能提示和技巧的聯機文檔提供了便利。
-
現在,診斷系統會通過“信息欄”通知用戶可能涉及 Visual Studio 意外終止的擴展(圖 3)。 “信息欄”提供有關終止的信息,並詢問是否要禁用可疑擴展。
(圖 3)信息欄通知 -
在打開文件夾方案中,可以通過專用 UI 選擇所需的調試程式。
-
已停止在 Visual Studio 2017 的不同並行安裝之間共用某些設置(如工具視窗佈局),方法是將“%userprofile%\Documents\Visual Studio 2017\Settings”中的“CurrentSettings.vssettings”文件位置更改為類似於“%localappdata%\Microsoft\VisualStudio\15.0_xxxxxxxx\Settings”的特定於安裝的文件夾。
註意:在全新安裝時可使用特定於安裝的新設置。 將現有 Visual Studio 2017 安裝升級到最新更新時,其會使用現有共用位置。 如果現在已擁有 Visual Studio 2017 的並行安裝,並決定升級且希望使用特定於安裝的新設置文件位置,請參閱以下步驟:1. 升級之後,使用“導入\導出”設置嚮導將所有現有設置導出到“%localappdata%\Microsoft\VisualStudio\15.0_xxxxxxxx”文件夾之外的某個位置。
- 打開已升級的 Visual Studio 安裝的開發者命令提示符併在其中運行
devenv resetuserdata
。 - 啟動 Visual Studio,並從導出的設置文件中導入保存的設置。
- 打開已升級的 Visual Studio 安裝的開發者命令提示符併在其中運行
-
修複了導致 Visual Studio 在主視窗出現前掛起的“隱藏視窗”bug。
- 擴大了可點擊目標區域,以便更輕鬆地消除通知提示。
.NET IDE 改進
- 添加了若幹新重構和快速修補程式,例如“解決合併衝突”、“添加 null 檢查”、“添加參數”等。 請查看 Visual Studio 中的重構、代碼生成和快速操作頁面,查看完整列表。
- 對 IntelliSense 中的變數名稱提出了建議,有助於用戶快速命名變數,例如
Person person
。 - “編輯並繼續”現在支持 C# 7.0 功能(本地函數除外)。
- 針對 .NET Core,增加了對項目文件夾外的文件通配支持。
登錄和標識改進
- 修複了帳戶選取器控制項,“重新輸入憑據”運行更可靠。 (在某些情況下,帳戶選取器會在重新輸入憑據時清除帳戶。 此修補程式應能解決此問題。)
起始頁
- 擴大了“開始”頁面 MRU“固定”的可點擊目標區域,以便更輕鬆地將關註的項固定到 MRU 頂部。
輕量級解決方案載入
- 提高了生成速度和穩定性。
- 減少了載入的項目數。
- 我們添加了一個新選項(圖 4),該選項允許 Visual Studio 確定什麼最適合用戶的解決方案。
- 我們添加了文件搜索結果解決方案,搜索延遲項目,而不僅僅是載入項目。
- 對此有一些限制:
- 搜索不會擴展到文件中,並且不包括漸進式結果,如類和方法。
- 屬於項目的文件顯示為簡單列表。 如果文件屬於一個文件夾,除了文件名,還會顯示相對路徑。
- 搜索視圖中沒有文件項的上下文菜單。
- 載入項目時,會刷新所有現有的搜索,以添加進度結果。
- 對此有一些限制:
- 現在,GoTo All 和 GoTo Files 在工作區中顯示外部項中的內容。
- 我們改進了使用 LSL 的項目中的 Batch 生成。
安裝
- 現在,Visual Studio 安裝程式支持級別小於 150% 的高 DPI 縮放。
vswhere.exe
可執行文件已更新為在預設情況下排除預覽實例,而當命令行上包含--prerelease
時,包含預覽實例。- CLI 能處理
--verify``--fix
和--clean
。--verify
會驗證佈局並通知用戶缺失和無效的負載。--fix
會驗證佈局並重新下載缺失或無效的包。--clean
會刪除已過時的包並允許用戶將佈局剪裁到特定的版本範圍。
- 已移除了安裝程式工具提示中的驅動器大小(圖 5)。
打開文件夾和 CMake 工具
- 提高了文件夾和解決方案之間切換的穩定性。
- 打開文件夾擴展程式控制項可將源控制項圖標添加到文件夾。 這樣一來,用戶可快速查看解決方案資源管理器中文件的源控制項狀態,該操作目前由 SVN 實現。
- Visual Studio 中的 CMake 體驗已更新,現可使用 CMake 3.8。
- 對於使用 MinGW 或 Cygwin 的 C++ 項目,改進了“打開文件夾”中的編輯、生成和調試支持。
- 添加了支持,以定義“CppProperties.json”和“CMakeSettings.json”中的全局和特定於配置的環境變數。 “launch.vs.json”中定義的調試配置和“tasks.vs.json”中的任務可以使用這些環境變數。
- 增強了 Visual Studio 的 CMake 工具以提供對 CTest 集成的支持。
- 現可使用 CMake 的 Ninja 生成器,以及通過 IntelliSense 輕鬆面向 64 位平臺、生成、調試和編輯的功能。
Visual Studio 編輯器
- 修複了以下問題:如果其他工具提示處於活動狀態,IntelliSense 會消失。
- 修複了添加大量錯誤時,難以進行手動滾動和選擇的錯誤。
- 添加了“藍色”主題的新變體,滿足了希望在 Visual Studio 編輯器中使用更高對比度的用戶需要。 如果不希望使用或不需要完全高對比度模式,此主題可提供比常規“藍色”主題更高的對比度。 可以通過“工具”->“選項”->“環境”->“通用”,嘗試使用此主題。
- 如果使用屏幕閱讀器,現可通過使用新的“顯示行註釋”命令在修飾之間導航。
- 若要激活,可在“編輯器”上下文菜單上選擇“顯示行註釋”(
Ctrl+K
、Ctrl+M
)。 此時編輯器中會出現一個描述行上修飾的彈出視窗。 - 使用
Ctrl+K
、Ctrl+ Right/Left Arrow
,在行上的多個註釋之間導航。 - 還可通過“顯示結構”命令
Ctrl+K
、Ctrl+G
在代碼中輕鬆查找上下文。 它會在插入點所在的彈出視窗中顯示代碼行的結構上下文,且可由屏幕閱讀器讀取。
- 若要激活,可在“編輯器”上下文菜單上選擇“顯示行註釋”(
持續交付工具
已將這些功能從 CD4VS 擴展移至 Visual Studio:
- 為包含面向 Azure 應用服務的 ASP.NET 項目的解決方案,配置持續交付。
- 為包含面向 Azure 應用服務的 ASP.NET Core 項目的解決方案,配置持續交付。
容器開發工具
- 現在,Visual Studio 2017 版本 15.3 支持跨使用 Windows 容器的現有 .NET Framework 應用、使用 Windows 的 .NET Core 和 Linux 支持的容器開發範圍。 最近的改進包括對運行 Nano 伺服器的容器中的 .NET Core 應用程式的支持,以及對容器中 .NET Framework 應用程式的調試改進。
Service Fabric 工具
- 此版本提供新的有狀態 ASP.NET Core 項目模板、對 Service Fabric 2.5 和 2.6 SDK(以及相應運行時)的支持以及若幹 bug 修補程式。
C++ 語言服務
- IntelliSense 引擎改進
- C++ IntelliSense 支持與批編譯器版本相匹配的新的 C++17 功能。
- 已將 C++ 編輯器中的上下文菜單選項添加到 Rescan 文件中,可在 IntelliSense 無法正常工作時使用此選項。
- 減少了運行 C++ 代碼的“查找所有引用”或“調用層次結構”時的 CPU 使用。
- 我們改進了 C++ IntelliSense 引擎總體體驗。
- 項目和代碼嚮導改進
- 我們按照簽名對話框樣式重新編寫了多個項目和代碼嚮導。
- “添加類”現在直接啟動“添加類嚮導”。 以前此處的其他所有項現在位於“添加”>“新建項”。
- Win32 項目現在位於“新建項目”對話框中的“Windows 桌面”類別下。
- Windows 控制台和桌面應用程式模板現在可以在不顯示嚮導的情況下創建項目。 在相同的類別下有一個新的 Windows 桌面嚮導,顯示和以前相同的選項。
- 實驗性選項下的“啟用更快的項目載入”選項已重命名為“啟用項目緩存”並移至“VC++ 項目設置”下。 舊屬性值不會傳播到新選項。
Visual C++ 工具集和庫
- Visual Studio 開發者命令提示符(和 Visual C++ 命令提示符)已添加對通過
-vcvars_ver=14.0
參數初始化面向 Visual C++ 2015 工具集 (v140) 的命令提示符環境的支持。 - Visual C++ Redist 文件目錄已重命名為 Microsoft.VC141.,以通過工具集 (14.1x) 匹配版本控制。 在 VS 2017 RTM 中,這些目錄被錯誤命名為 Microsoft.VC150.。
- Visual C++ 文件版本和目錄 (VS 2017 15.3):
- VC++ 工具集文件版本:14.11.25506.0 或 19.11.25506.0
- VC++ 工具目錄:VC\Tools\MSVC\14.11.25503(預覽版中鎖定目錄位置)
- VC++ Redist 目錄 [a]:VC\Redist\MSVC\14.11.25325(除 MFC 和 OneCore 之外的所有運行時)
- VC++ Redist 目錄 [b]:VC\Redist\MSVC\14.11.25415(MFC 和 OneCore 運行時)
C# 7.1 語言支持
- 添加了使用 C# 7.1 語言功能的功能。
- C# 7.1 添加對非同步 Main 方法、泛型模式匹配、“預設”文本和推斷元組名稱的支持。
- 在項目中使用 C# 7.1 功能時,燈泡圖標會提示將項目語言版本升級到“C# 7.1”或“最新”。
- 請參閱 C# 語言功能狀態頁,瞭解完整詳細信息。
.NET Core 和 ASP.NET Core 改進
- 現可通過單獨的下載安裝 .NET Core 2.0 SDK,以便在 Visual Studio 2017 版本 15.3 中啟用 .NET Core 2.0 開發。 請參閱 .NET 博客帖子,瞭解詳細信息。
- Visual Studio 現提供對多個 .NET Core SDK 的並行支持。 可試用 .NET Core SDK 最新的每日內部版本,同時使用 SDK 的最新公開發佈版本進行開發。 有關詳細信息,請查看 .NET 博客。
- 通過 Visual Basic 支持可在 Visual Basic 中創建 .NET Core 控制台應用程式,以及 .NET Core 和 .NET Standard 類庫。
- 通過 .NET Framework 和 .NET Standard/Core 互操作可從 .NET Framework 項目中引用 .NET Core/.NET Standard 庫,反之亦然。 無需手動添加互操作 NuGet 包 - Visual Studio 會自動執行此操作。
- 通過多個目標框架支持增強可為多個目標框架 (TFM) 生成項目,並使用“調試/運行”中的 TFM 選取器選取要運行的 TFM。
- 我們添加了 Windows Nano 映像支持,將 ASP.NET Core 應用容器化為 Windows Nano 映像。 現可選擇 Nano 作為容器平臺。 可以在“文件”->“為 ASP.NET Core 項目新建項目”下執行此操作。 對於現有的項目,可以使用“項目上下文菜單”進行添加。
- 本地 IIS 支持:現可使用 Visual Studio 中的 IIS 進行開發和調試。
- .NET Framework 上的 ASP.NET Core - 在此版本中,若要創建面向完整 .NET Framework(僅 Windows) 的 ASP.NET Core 項目,使用 One ASP.NET 對話框上的下拉列表。
-
現可為 .NET Standard、.NET Core 和 ASP.NET Core 項目啟用 Live Unit Testing 功能。
NuGet 改進
- 安裝包或添加的項目到項目引用不相容時,NuGet 現在會顯示改進的警告和錯誤。
-
NuGet 現在允許用戶禁止特定或所有警告,或者通過生成屬性將其提升至錯誤。
.NET Framework 4.7
- 現在,Visual Studio 2017 版本 15.3 將 .NET Framework 4.7 開發工具提供給所有受支持的平臺(其中包括 4.7 運行時)。 .NET Framework 4.7 提供多個新功能和改進,以及大量可靠性、穩定性、安全性和性能修複。 可在這些文章中找到有關 .NET 4.7 的更多詳細信息:
- .NET Framework 4.7 RTM 博客。
- .NET Framework 中的新增功能。
- .NET Framework 4.7 發佈更改備註。
- .NET Framework 4.7 的已知問題。
- .NET Framework 4.7 中的應用程式相容性。
- .NET Framework API 差異。
調試和診斷
Visual Studio Team Services 符號伺服器的調試程式支持
- 現可從 Visual Studio Team Services 符號伺服器查詢和下載符號(圖 6)。 可以使用“工具”->“選項”->“調試程式”->“符號”頁,選擇 Visual Studio Team Services 符號路徑並將其添加到 Visual Studio 環境。 若要設置 Visual Studio Team Services 符號伺服器,請遵循這些說明。
- 使用“開始調試”(
F5
) 或“附加到進程”(Ctrl+Alt+P
) 調試時,現在支持 SetThreadDescription API。 通過此 API 設置的線程名稱現在出現在“線程視窗”和“調試位置”工具欄的“線程”下拉列表中。 尚不支持在轉儲調試時使用此功能。 - “輸出視窗”現在顯示調試時“視窗容器”中運行的應用程式的控制台輸出。
- 添加了基於 Nano 伺服器調試在“視窗容器”中運行的 .NET Core 應用的新支持。
指向並單擊“設置下一語句”
- 現在,可在調試期間,在斷點處停止時按住
Ctrl
鍵。 代碼行旁的“運行到單擊處”(運行執行到此處)圖標更改為“設置下一語句”功能(圖 7)。 單擊此處將黃色指令指針移動到該行,並設置調試程式要執行的下一語句。
Windows PDB 文件格式的源鏈接支持
- 除可移植 PDB 外,Windows PDB 文件格式現在也支持源鏈接。 支持它的編譯器可以將必需信息放在 Windows PDB 文件格式中,調試程式可以基於該信息檢索源文件。
“打開文件夾”調試改進
使用“打開文件夾”新模板時的調試體驗更加輕鬆。 如果已安裝核心調試程式,使用新模板可選擇要使用的調試程式類型。 在解決方案資源管理器的“調試和啟動設置”菜單選項中,可以在“選擇調試程式”對話框中選擇“托管”、“本機”或“混合”。 如果已安裝 C++ MDD 體驗(Android C++、Linux 調試等),現在可以在相同菜單選項中看到使用 GDB 進行附加和啟動的 MinGW 和 Cygwin 支持選項。
“全部刷新”在變數視窗中嵌套值
- 單擊“監視”、“自動”和“局部變數”視窗中變數或表達式的父節點的“刷新”按鈕時,該節點的所有可見子變數和子表達式也會刷新並重新計算。 不再需要單擊每一個子節點的“刷新”按鈕。
.NET Core 的 Live Unit Testing 支持
- 現在可以為 .NET Standard、.NET Core 和 ASP.NET Core 項目啟用 Live Unit Testing 功能。
Xamarin
- 屬性頁和應用清單重新設計 - 我們不斷努力提高 iOS 和 Android 項目的屬性頁的易用性。
- 新權利編輯器 - 添加了用於編輯應用權利的獨立編輯器。
有關這些更改的完整概述,請訪問 developer.xamarin.com,獲取更多詳細信息。
.NET Core
- 為 .NET Core 項目添加了 Live Unit Testing 支持。
- 可以使用 Visual Basic 創建 .NET Core 控制台應用程式,以及 .NET Core 和 .NET Standard 類庫。
- Visual Studio 現在支持創建和運行 .NET Core 2.0 應用(如果已單獨安裝 SDK)。 可從 .NET Core 2.0 SDK 頁安裝最新內部版本。
請查看 .NET Core 2.0 博客,獲取更多詳細信息。
Application Insights 搜索中的相關事件聚類分析
- 已將相關事件的群集添加到 Application Insights 搜索工具的搜索查詢結果中。 這些群集可以幫助用戶發現應用程式行為令人意外的模式,例如來自一個國家/地區、版本或用戶的大量異常。
Redgate 數據工具
Redgate ReadyRoll Core
已更新到版本 1.13.23.3402 以添加:
- 圖標改進,具備高 DPI 支持和工具欄更好的響應性。
- “項目設置”選項卡的可用性改進。
- “入門”視圖、“部署摘要”和“登錄視窗”的可用性改進。
- 目標資料庫不存在時的視圖。
- “工具”菜單下的 ReadyRoll 項。
- 對打開 SSMS 時的 SQL 身份驗證的支持。
Redgate SQL Prompt Core
- 已更新到版本 7.5.1.1087 以改進對 SQL Server 2016 的語法支持,並修複名稱限定和 Azure 連接性問題。
Redgate SQL Search
- 已更新到版本 2.4.2.1321 以添加高 DPI 支持的圖標。
Azure Function 工具
- 用於開發 C# Azure Functions 的工具添加到了“Azure 開發”工作負載中。
- 可開發使用預編譯 C# 類庫的 Azure Function 以及用於指定觸發器的屬性。
- 可在本地開發電腦上生成、運行和調試。
- 現可直接從 Visual Studio 發佈到 Azure。
JavaScript 和 TypeScript
- 我們從 64 位節點切換到了 32 位節點,從而啟動 tsserver,並將語言服務記憶體消耗減半。
- 導入語句中的文件路徑 IntelliSense 現在更快。
- TypeScript 版本現在可以獨立於 Visual Studio 更新安裝,並基於每個項目選擇(有關詳細信息,請查看此處)
Node.js
- 添加了對 Node 8 調試的支持。
- 增強了單元測試運行程式的性能。
- 簡化了 npm 包安裝程式 UI。
連接的服務中的 Microsoft Graph 提供程式
- 在連接的服務中啟用了對 Microsoft Graph API 的支持。
Python
- 我們解決了許多故障和意外錯誤,使體驗更穩定。
- 我們改進了屏幕閱讀器、鍵盤導航和高對比度的輔助功能。
- 我們改進了本地化,非英語用戶在 UI 中看到的英文文本更少了。
R 工具
- 改進的 IntelliSense
- 對阻止 ping 的電腦具有更好的 Azure 連接性
- 遠程服務安裝不再需要服務管理許可權
- 輔助功能和本地化的修複和改進