我們非常榮幸地宣布 Visual Studio 2017 RC 現已推出! 此新版本包括我們最新的功能創新和改進。
注意
這里是 Visual Studio 2017 最新版本的發行說明。
下載:Visual Studio Enterprise 2017 RC
若要了解有關其他相關下載的詳細信息,請參閱下載頁。 另請參閱 Visual Studio 2017 系統要求和 Visual Studio 2017 平台目標以及兼容性。
重要事項
雖然一般情況下支持在生產環境中使用 Visual Studio 2017 RC,但安裝用戶界面中標記為“預覽”的工作負荷和組件不支持在生產環境中使用。
反饋
我們期待你的寶貴意見和建議! 有關安裝程序或 Visual Studio IDE 本身的問題,請通過右上角的報告問題選項告知我們。 在開發人員社區門戶網站上跟蹤自己的反饋。 如有任何建議,請通過 UserVoice 告知我們。
新增功能
- 新的安裝體驗
- 增強的 Visual Studio 反饋工作流
- Visual Studio IDE
- 體系結構依賴關系的實時驗證
- 實時單元測試
- 開發人員命令提示
- 調試和診斷
- Visual C++
- C# 和 Visual Basic
- F#
- Python
- R
- JavaScript 和 TypeScript
- 用於 XAML 應用的工具
- 通用 Windows 應用開發工具
- Visual Studio 用於 Apache Cordova 的工具
- Xamarin(預覽版)
- NuGet
- 開發人員分析工具
- 團隊資源管理器
- SQL Server Data Tools
- Visual Studio 的 Office 開發人員工具
- Visual Studio 軟件開發工具包
- 用於 .NET 的 Azure SDK
- 適用於 Visual Studio 的 Node.js 工具
- 適用於 Unity 的 Visual Studio 工具
- .NET Core 和 Docker(預覽版)
已解決的問題
若要查看此 RC 版中的已解決的問題,請訪問開發人員社區門戶。
已知問題
相關版本
新增功能
全新安裝體驗
我們很高興推出新款全新設計的安裝程序:
- 減少 Visual Studio 的最小內存占用量。
- 安裝速度更快、系統影響更小和完全卸載。
- 方便你更輕松地選擇並僅安裝所需功能。
首次安裝 Visual Studio 2017 RC 時,會獲得新體驗:
最小的安裝僅為數百兆字節,但仍然支持針對 20 多種語言和源代碼管理的基本代碼編輯。 大部分用戶會想安裝更多功能,因此可添加一個或多個“工作負載”,它們代表常見框架、語言和平台 - 涵蓋了從 .NET 桌面開發到使用 R、Python 和 F# 的數據科學。
隨着發布准備的進展,我們將持續優化和擴展工作負荷列表。 特別是,由於 .NET Core、Xamarin、Python 和數據科學工作負載尚未達到 RC 質量,已將其標記為“預覽”質量。 在此階段,在生產環境中不應依賴於這三個工作負載。
重要事項
如果已在計算機上安裝 Visual Studio 2017 的預覽版本,系統將會提示在安裝 Visual Studio 2017 RC 之前先刪除此預覽版本。
有關已知問題的詳細信息,請參閱本文檔的已知問題部分。
對新的安裝程序提出反饋
我們非常希望你嘗試此預覽版,並期待收到你的反饋意見。 你可以使用新安裝程序客戶端的_報告問題_和_提供建議_來報告問題或提供建議。 具體而言,我們想知道你在安裝、卸載或修改安裝時是否遇到錯誤,是否遇到異常安裝時間(例如掛起)或意外錯誤消息。
_RC 中的新功能_創建用於脫機安裝和新命令行安裝支持的布局
系統管理員現在可以創建 Visual Studio 的脫機布局,其中包含安裝產品所需的所有內容,而無需訪問 Internet。 為此,請使用 --layout [path]
開關(例如 vs_enterprise.exe --layout c:\mylayout
)運行與要脫機使用的產品關聯的引導程序可執行文件。 這將下載脫機安裝所需的包。 或者,可以為要包含的產品語言(例如 --lang en-us
)指定區域設置代碼。 如果未指定,則將下載針對所有本地化語言的支持。
若要從布局文件夾安裝,只需從新創建的布局文件夾中運行引導程序可執行文件即可。 請注意,仍需要從 Internet 下載簽名驗證證書。 將在即將發布的版本中解決有關進行連接的需要。 最后,請注意,Android SDK 需要通過在線連接才能安裝。
還可以運行 C:\Program Files (x86)\Microsoft Visual Studio\Installer\vs_installershell.exe
從命令行安裝 Visual Studio 組件。 使用 --help
開關獲取有關命令行選項的詳細信息。
增強的 Visual Studio 反饋工作流
Visual Studio 2017 包括升級反饋體驗,可改善信息跟進和協作。 作為此次升級的一部分,你將注意到 Visual Studio 中“問題報告”體驗的協作性增強,且補充了復合式 Web 門戶,形成完全端對端反饋解決方案。 現在,可以搜索、關注、投票並獲取之前通過 Visual Studio IDE 的“報告問題”功能提供的所有反饋的最新更新。 這些增強的體驗針對我們收到的眾多用戶反饋,讓用戶能夠與我們的團隊進行雙向交流。
Visual Studio IDE
Visual Studio 2017 RC 包括了許多增強功能。
整體改進
- 可在新的 Visual Studio 安裝程序中選擇 Visual Studio 適用的 GitHub 擴展。
- 已對 Visual Studio 進行優化以減少啟動時間和解決方案加載時間。 首次啟動 Visual Studio 提速 50%。
- Visual Studio 現可監視影響啟動、解決方案加載或編輯的擴展性能。 系統將通過 IDE 中的通知欄通知有關執行效果不佳的擴展的情況。 使用新的性能中心(也可通過幫助 | 管理 Visual Studio 性能),不僅可以查看影響性能的擴展,還可以發現影響啟動性能的工具窗口並更改其啟動加載行為。
- 已將“重載所有項目”替換為“重載解決方案”,以支持更佳的將外部分支切換為 VS 的性能。 使用 Git 命令行切換分支時,請在切換分支后選擇“重載解決方案”以最大程度地提升性能。
- 增強了用於 .NET Core 和 ASP.NET Core 項目的文件通配功能。 請參閱項目文件通配,以獲取更多詳細信息。
- 即將自動轉到克隆后的存儲庫的文件夾視圖。 可查看文件或使用新解決方案選擇列表在解決方案資源管理器中打開解決方案。
- 引入了新的外部服務主機,將取代 VSHub;此新的服務主機是一個外部程序,將在任務管理器中顯示為 ServiceHub.Host.CLR.*.exe 和 ServiceHub.Host.Node.x86.exe。 此主機將最終消除與 VSHub 一起引入的 localhost http 流量,前者應可解決用戶報告的產生干擾的 Fiddler 問題。
- 預發布許可證到期消息更明確地說明了當前的許可證狀態。
- 現在,屏幕閱讀器可以更輕松地訪問“帳戶設置”對話框。
-
通過版本控制狀態欄,你可以更輕松地將本地存儲庫發布到 SCC 主機,並跟蹤未提交和未推送的工作。
起始頁
- 修改了起始頁,增添了“打開”和“創建”功能:
- 從 VSTS 獲取遠程存儲庫或使用我們更加醒目的 MRU,以輕松地打開本地項目和解決方案。
- 起始頁 MRU 會顯示在其他計算機上克隆的存儲庫,因此可在當前計算機上輕松克隆這些庫。
- 通過可搜索的模板和最近使用的模板列表,直接從起始頁新建項目。 最近使用的模板也會在具有個性化帳戶的 Visual Studio 實例間漫游。
- 通過起始頁上的“從 VSTS 簽出”選項,快速啟動 VSTS 體驗的新克隆。
- 可刪除的“入門”部分。
- “新聞”部分現可折疊:
- _RC 中的新增功能_更新了新聞源中新添加的項上的徽章。
- _RC 中的新增功能_在新聞源處於折疊狀態時,如果出現新項,則對新聞源擴展器設置徽章。
- _RC 中的新增功能_優化了視覺設計,由此解決了反饋的有關屏幕較小時元素截斷的問題,同時提升了空間利用率。
“入門”部分和“新聞”如下所示:
“入門”部分已刪除,“新聞”已折疊:
改進了代碼導航
Visual Studio 2017 RC 中的代碼導航功能有了顯著改進。
-
通過“轉到”功能(Ctrl + 或 Ctrl + T),可快速查找並轉到代碼中的文件、類型、方法和其他元素。 可直接轉到所需的任何類型的項目,即使在較大基本代碼中也可實現。 此外,若知道要查找的項目類型,可輕松篩選。
還優化了“轉到行”(Ctrl + G)體驗。
“轉到”系列命令位於“編輯”菜單的頂部。 請參閱已知問題,了解此 RC 版中有關“轉到”的一系列已知限制。
-
“查找所有引用”(Shift+F12) 已大幅改進(當前針對 C#、Visual Basic 和 C++),可實現高級分組、篩選、分類、在引用結果中搜索以及結果着色(針對 C# 和 VB),讓用戶清晰了解引用並自信地找到所需的代碼行。 鼠標懸停在一個引用項上時,會顯示一個工具提示,其中顯示源代碼中該引用的上下文(針對 C# 和 VB)。 通過切換工具欄中的“保存結果”按鈕,“查找所有引用”的下一個調用將在新窗口中填充引用結果。 通過此操作,可將當前結果保留在現有窗口中。
-
結構參考線現在編輯器中繪制,以便可輕松可視化正在處理的代碼的結構。 鼠標懸停時,會顯示一個工具提示,其中包含當前代碼塊(相對於其上級塊)的上下文。 結構參考線當前支持 C#、Visual Basic 和 XAML 文件,以及通過 TextMate 語法支持的任何文件。 可通過取消選中“文本編輯器” > “常規”類別下的“顯示結構參考線”復選框,在“工具選項”對話框中禁用此功能。
EditorConfig 支持
RC 中的新增功能 Visual Studio 編輯器現支持 EditorConfig,它允許開發人員定義編碼樣式約定並使其在不同編輯器和 IDE 之間保持一致。 請參閱已知問題,了解此 RC 版中有關 EditorConfig 支持的一系列已知限制。
新的擴展性格式
借助 Visual Studio 2017 RC 中新的安裝程序技術,用戶可更好地掌控所安裝的工具。 一些用戶可能僅安裝核心 Visual Studio 編輯器,而另一些可能安裝若干工作負荷。 現在,擴展作者可在清單中指定擴展所需的單獨組件,確保安裝了擴展所需的必備功能。
如果擴展不是使用新的 VSIX 格式生成的,用戶在嘗試安裝此擴展時,將會收到警告。 舊的 VSIX 格式不會指定所需實現的先決條件,因此當 Visual Studio 2017 RC 中不具備這些先決條件時,該格式可能無法正常工作。 新的 VSIX 格式是向后兼容的,適用於 Visual Studio 2012 及之前的所有版本。
更新了 VSIX 清單設計器,以反映對清單的更改。 在先決條件選項卡中,擴展開發人員可找到用於指定為擴展先決條件的已安裝組件的列表。
在擴展安裝期間,VSIX 安裝程序將指示缺少哪些組件,並會將其與擴展一並安裝。
批量修改擴展
在“擴展和更新”對話框中,現可計划在需要重新啟動 Visual Studio 之前,要進行安裝、更新和卸載的多個擴展。 在右下角,有一個所有計划任務的摘要。 單擊“x”將取消擴展的修改計划。
當 VSIX 安裝程序檢測到所有 Visual Studio 窗口已關閉后,便會啟動以完成計划的修改。
Ngen 支持
現可選擇使用 ngen 安裝程序集。
- NGEN - 是否對程序集使用 ngen。
- NGEN 應用程序 - 經由 /ExeConfig 開關傳遞到 ngen 的應用程序。
- NGEN 體系結構 - 本機映像的目標體系結構。 選項有:x86、x64 以及全部。
- NGEN 優先級 - Ngen 優先級別。
在擴展目錄外安裝文件
現在,可選擇將文件安裝到位於擴展目錄之外的一系列所選文件夾。
- 包括在 VSIX 中 - 是否將文件包括在 VSIX 中。
- 安裝根目錄 - 要將文件安裝在其中的根目錄。 選項有:Default(安裝在擴展目錄內)、MSBuild、Schemas、PublicAssemblies、Licenses 和 ReferenceAssemblies。
- 目標路徑 - 要安裝在用戶計算機上的文件的名稱。
- VSIX 子路徑 - 安裝文件時所用的根目錄下的子路徑。
漫游擴展管理器
漫游擴展管理器是 Visual Studio 2017 RC 中的新增功能,可幫助跟蹤所有開發環境中用戶喜歡的全部擴展。 漫游擴展可在雲中創建同步列表,從而跟蹤已安裝的擴展。
登錄到 Visual Studio 時,從“工具”>“擴展”>“更新”,並單擊“漫游擴展管理器”可快速查看擴展列表。 它可跟蹤已安裝的擴展,並讓你選擇要添加到漫游列表的擴展。 庫中出色的擴展與日俱增,使用此工具,你可以為每種開發環境設置你喜愛的擴展。
使用此功能時將注意到 3 種圖標類型:
“漫游”圖標:表示存在於漫游列表中、但未在此計算機上安裝的擴展。 可通過“下載”按鈕安裝這些擴展。
“漫游且已安裝”圖標:表示存在於漫游列表中且已在此環境中安裝的所有擴展。 如果你確定不希望漫游,可通過“停止漫游”按鈕刪除它們。
“已安裝”圖標:表示此環境中已安裝、但不屬於漫游列表的所有擴展。 擴展可通過“開始漫游”按鈕添加到漫游列表。
這些圖標將顯示列表當前的狀態。 可使用處於任何狀態的任何擴展,因此可自定義你心中所想的內容! 或者,讓我們為你代勞! 登錄時下載的所有擴展都將作為“漫游且已安裝”的內容添加到列表,因此將包含在漫游列表中,你可以從任何計算機對其進行訪問!
改進了登錄和標識
_RC 中的新增功能_推出了一種新的標識服務,可用於跨 Microsoft 開發人員工具共享用戶帳戶。 在 Visual Studio 中,此共享包括團隊資源管理器、Azure Tools、Windows 應用商店發布等功能。 現在,這些功能的登錄體驗共有且一致。
除了改進 Visual Studio,我們還在服務端部署了部分改進功能,讓用戶可安全保持登錄狀態,消除了每隔 12 小時強制登錄的要求。 這解決了最常報告的登錄問題。 深入了解如何減少 Visual Studio 提示。
打開文件夾
“打開文件夾”是使用不含項目和解決方案的基本代碼的簡便方法。 可通過打開“文件菜單”,單擊“打開”,然后單擊“文件夾”,導航到一個文件夾。
可使用解決方案資源管理器打開和編輯文件。 許多常用語言具有語法突出顯示和符號導航(GoTo)支持。 此外,某些語言可直接由文件夾獲得高級 IntelliSense 和調試支持:
- C++ (CMake)
- Node.js - JavaScript/TypeScript
- Python
- C# 和 VB
可使用 F5 和解決方案資源管理器中的文件上下文菜單實現生成或調試操作。 要獲得最佳體驗,請確保安裝所使用語言的工作負荷。
文件夾視圖也支持以下操作:
- 使用 GoTo (Ctrl+,) 在文件夾中的代碼中進行搜索。
- 將解決方案資源管理器文件夾視圖的范圍設置為子文件夾。
- 在資源管理器中或解決方案資源管理器的命令提示符下打開文件夾。
- 利用解決方案選擇下拉列表,在打開的文件夾/存儲庫的解決方案之間輕松切換。
- 使用 launch.json 配置調試和啟動設置。 右鍵單擊一個可調試的文件並選擇“調試和啟動設置”。
- 使用 tasks.json 配置任務和自定義生成。 右鍵單擊任何文件,並選擇“配置任務設置”。
- Launch.json 和 tasks.json 在 JSON 編輯器中具有 IntelliSense。
RC 中的新增功能 大幅提升了打開文件夾和在文件夾視圖與解決方案視圖之間切換時的效果。
輕量級解決方案加載
輕量級解決方案加載可讓大型解決方案的加載速度更快。 對於大型解決方案,輕量級解決方案可大幅節省加載時間和內存使用量。 此功能並非默認啟用,可按解決方案對單個解決方案啟用,也可在 IDE 中全局啟用。 要全局啟用,可通過選擇“項目和解決方案”下的“常規”或通過使用“快速啟動”搜索“輕量級解決方案加載”,導航到“工具選項”對話框。 可在解決方案屬性窗格中,為單個解決方案開啟和關閉該功能。
輕量級解決方案加載最適合包含 C# 項目或包含混用 C# 和 C++ 的項目的大型解決方案。 如果檢測到正在使用大型解決方案,系統可能會提示啟用此功能。 有關此功能的更多詳細信息,可訪問 Visual Studio 博客。
語法着色、自動完成、代碼段和對一系列更廣泛的語言的“導航到”搜索支持
基於在 Studio 2015 更新版本中添加的支持,Visual Studio 2017 RC 現支持對更多語言進行語法着色和自動完成。 此外,這些語言中的其中一些語言也支持通過“導航到”(Ctrl+) 和/或代碼段導航。 有關詳細信息,請參閱下面的列表。
以下所示的語言文件支持新“Visual Studio 核心編輯器”中的這些功能(即使並未安裝顯式支持有問題的語言的工作負載)。 如果安裝了提供語言支持的工作負荷(例如 .NET 桌面應用程序開發工作負荷、使用 C++ 的 Windows 桌面應用開發工作負荷、Python 開發工作負荷等),會提供更廣泛的語言支持,包括 IntelliSense 和其他高級語言功能(例如燈泡)。
按支持級別列出的語言文件類型:
- 僅支持語法着色和自動完成:
- Bat、Clojure、CoffeeScript、CSS、Docker、F#、Groovy、INI、Jade、Javadoc、JSON、LESS、LUA、Make、Markdown ++、Objective-C、Perl、PowerShell、Python、Rust、ShaderLab、SQL、Visual Basic .NET、YAML。
- 支持代碼段(除了語法着色和自動完成以外):
- CMake、C++、C#、Go、Groovy、HTML、Java、Javadoc、JavaScript、Lua、Perl、PHP、R、Ruby、Shellscript、Swift、XML。
- 支持導航到(除了語法着色和自動完成以外):
- C++、C#、Go、Java、JavaScript、PHP、TypeScript、Visual Basic。
項目概述頁入門
RC 中的新增功能 從 ASP.NET Core 和 ASP.NET 4.x 項目開始,我們引入了全新的新項目入門體驗。 我們從解決方案中移除了 Project_Readme.html 並在新的應用配置設計器中將其替換為一個“概述”選項卡。 我們壓縮了此頁上的內容,將重點放在可提高運行和執行效率的操作上!
使用服務功能連接到服務
服務功能即 Visual Studio 2017 RC 中現代化的“添加連接的服務”功能或“添加服務引用”功能。 服務功能可使應用與服務間的連接更輕松。 解決方案資源管理器中提供了一個用於 Web 和移動項目類型的名為“服務功能”的新節點。 雙擊此節點會在 Visual Studio 中打開一個新的整頁選項卡,可在其中發現可連接到的熱門 Microsoft 服務。
在“服務功能”頁上選擇一個服務將調用“連接的服務向導”,該向導會配置項目、下載必要的 NuGet 數據包,從而幫助快速輕松地根據服務需要進行編碼。
用於連接到 Azure App Service 移動應用的向導
服務功能頁包括移動項目的 Azure 移動應用提供程序,可幫助連接到 Azure App Service 以在雲中存儲數據,添加身份驗證,並發送移動應用的推送通知。
體系結構依賴關系的實時驗證
在 Visual Studio Enterprise 中,如果設置了依賴關系驗證關系圖(又稱層關系圖),則在代碼編輯器中鍵入代碼時可實時獲得體系結構依賴關系規則違反行為的通知:“錯誤列表”中顯示錯誤,文本編輯器中的波形曲線顯示此違反行為的精確位置。 現在降低了引入非必需依賴關系的可能性。
實時單元測試
_RC 中的新增功能_實時單元測試是我們引入的一個新功能,僅在 Visual Studio 企業版中提供。 此功能能夠可視化單元測試結果和在編輯器中進行編碼時的實時代碼覆蓋情況。 該功能可用於適用於 .NET Framework 的 C#/VB 項目,並支持 MSTest xUnit 和 NUnit 這三種測試框架。 這是此功能的早期預覽版,具有多個已知問題。
開發人員命令提示符
重構了 Visual Studio 2017 開發人員命令提示符腳本,支持新的安裝體驗:
- 環境變量僅影響已安裝的工作負載。
- Visual Studio 開發人員命令提示符快捷方式應與以前的版本兼容。
現在,你可以通過命令行參數來配置開發人員命令提示符腳本:
- 在命令提示符處,調用
common7\tools\vsdevcmd.bat -help
(從 Visual Studio 安裝目錄)以獲取詳細信息。
調試和診斷
運行時單擊
RC 中的新增功能 只需在調試運行到此行時單擊代碼行旁邊的圖標。 無需再設置臨時斷點,也不必再執行多個步驟來執行代碼和在所需行停止。 現在,調試器下停在中斷狀態時,“運行時單擊”圖標會在鼠標懸停位置的代碼行旁邊巧妙顯示。 將鼠標移動到圖標,然后單擊按鈕,代碼即會運行並在下次於代碼路徑中命中時停在該行。 可通過“調試”>“選項”>“啟用‘運行時單擊’”將其關閉。
“附加到進程”篩選器
_RC 中的新增功能_在“附加到進程”對話框中輕松搜索,快速查找要將調試器附加到的進程。 將對正在運行的進程列表進行篩選,以篩選出與搜索條件匹配的項。 搜索篩選器具有記憶功能,會在重新打開對話框時提供之前的搜索內容。
重新附加到進程
_RC 中的新增功能_現可快速重新附加到之前調試的進程。 觸發新的“調試/重新附加到進程...” (Shift+Alt+P) 命令將立即嘗試將調試器附加到從“附加到進程”對話框調用的上一個調試會話的最后一系列進程。 調試器將通過先嘗試匹配上一個進程 ID,然后匹配上一個進程名稱,再次附加到進程。 如果沒有找到匹配項,或找到多個具有相同名稱的進程,則會出現“附加到進程”對話框,可通過它選擇所需的進程。
新的異常幫助器
新的“異常幫助窗口”可用於查看異常信息,該信息顯示在非模式對話框中,可對內部異常進行即時訪問。
在診斷 NullReferenceException 時快速查看異常幫助器中為 null 的內容。
現可在引發的異常處停止時單擊復選框添加條件,排除特定模塊引發的異常類型。
將條件添加到異常設置
如果你將調試程序設置為在引發時中斷,則可以添加條件,以便調試程序僅在指定模塊中引發異常時才中斷。
調試器輔助功能的改進
_RC 中的新增功能_現可更有效地將多個調試器窗口(調用堆棧、局部變量、自動、監視和快速監視)與屏幕閱讀器配合使用以及用於滿足其他輔助功能需要。
.NET Core 的 IntelliTrace 事件
_RC 中的新增功能_IntelliTrace 現在支持 ASP.NET Core 應用的 MVC、ADO.NET 和 HttpClient 事件。 這些事件將顯示在“診斷工具”窗口中的“事件”選項卡中。
“診斷工具”窗口更新
_RC 中的新增功能_啟動調試會話后,將在“診斷工具”窗口中看到應用程序的新“摘要”視圖。 從此處,將能夠:
- 查看應用程序中發生的 Application Insights 和 UI 分析事件(僅適用於 UWP 應用)的數量。 在 Visual Studio Enterprise 中,還將能夠查看異常數和 IntelliTrace 事件數。
- 獲取堆的內存快照。
- 啟用和禁用 CPU 分析。
性能探查器更新
RC 中的新增功能性能探查器現可附加到正在運行的進程。 CPU 使用率工具、GPU 使用率工具和性能向導支持附加到正在運行的進程。
CPU 使用率工具更新
CPU 使用率工具在 Visual Studio 2017 RC 中具有多項改進:
- 更好的外部代碼支持:CPU 工具現在可以使你更深入地了解庫和框架函數被用戶代碼調用時的成本。
-
通過函數的 CPU 成本對其進行排名的函數視圖。
-
“調用方/被調用方”視圖可用於調查進出所選函數的函數調用的成本。
-
添加了源視圖,其在 CPU 工具中選定函數時顯示函數的源代碼。
Chrome 調試支持
當開始調試 ASP.NET 項目並選擇 Google Chrome 作為瀏覽器后,Visual Studio 將調試在 Chrome 中運行的 JavaScript。
Visual C++
Visual Studio 2017 向 Visual C++ 環境引入了許多更新和修補程序。 我們修復了編譯器和工具中的 250 多個 bug 和已報告問題,其中很多是客戶通過 Microsoft Connect 提交的。 感謝你報告 bug!
Visual Studio 2017 RC 中編譯器和工具的版本編號是 14.10.24629。
C++ 代碼分析
用於強制執行 C++ 核心准則 的 C++ 核心檢查器現已通過 Visual Studio 分發。 只需在項目“屬性”頁的“代碼分析擴展”對話框中啟動檢查器,即會在運行代碼分析時包含擴展。
C++ 編譯器
在此版本中,我們更新了 C++ 編譯器和標准庫,不僅增強了對 C++11 和 C++14 功能的支持,還初步提出了對預期推出的特定 C++17 標准功能的支持。 編譯器支持通用 constexpr 和聚合的 NSDMI,具有 C++14 標准版中的全部新增功能。 請注意,編譯器仍缺少 C++11 和 C++98 標准版中的一些功能。 Visual Studio 2017 RC 允許結合使用 /SDL 和 /AWAIT。 刪除了協同程序的 /RTC 限制。 此版本在優化和代碼生成方面做出了若干改進。 顯著改進包括:
- 改進了循環的代碼生成:支持常量整數除法的自動矢量化,優化了 memset 模式的識別。
- 提高了代碼安全性:改進了緩沖區溢出編輯器診斷的顯示,/guard:cf 現可保護生成轉移表的切換語句。
/Debug:fastlink 選項得到改進,相較 Visual Studio 2015,大組件上的鏈接速度提升了 30%。
C++ 庫
標准模板庫:
- 對 basic_string _ITERATOR_DEBUG_LEVEL != 0 診斷進行了小幅改進。 在字符串機制中進行 IDL 檢查現在將報告觸發該檢查的特定行為。 例如,現在會收到“無法取消引用字符串迭代器,因為其已超出范圍(例如末尾迭代器)”,而不是“字符串迭代器不可取消引用”。
- 性能改進:basic_string::find(char) 重載僅調用 traits::find 一次。 以前會將此操作實施為針對長度為 1 的字符串的常規字符串搜索。
- 性能改進:basic_string::operator== 現會在比較字符串內容之前檢查字符串的大小。
- 性能改進:刪除了 basic_string 中編譯器優化程序難以分析的控制耦合。 解決了 VSO# 262848“:reserve() 執行了過多操作”。 請注意,對於所有短字符串,調用 reserve 后即使不執行任何操作仍會耗用資源。
- 我們增添了 <any>、<string_view>、apply()、make_from_tuple()。
- 對 std:: vector 進行了全面改進以提高正確性和性能:現可按標准版的要求正確處理插入/定位期間的別名化,在標准版需要時可通過 move_if_noexcept() 和其他邏輯提供強大的異常保障,並且插入/定位執行的元素操作減少。
- 現在 STL會避免取消引用 null 復雜精致指針。
- 增添了 <optional>、<variant>、shared_ptr::weak_type 和 <cstdalign>。
- 在 min/max/minmax(initializer_list) 和 min_element/max_element/minmax_element() 中啟用了 C++14 constexpr。
- 改進了 weak_ptr::lock() 性能。
- 修復了 std::promise 的移動賦值運算符,該運算符之前可導致代碼永久受阻。
- 修復了編譯器錯誤,將 atomic<T *> 隱式轉換為 T *。
- pointer_traits<Ptr> 現可正確檢測 Ptr::rebind<U>。
- 修復了 move_iterator 減法運算符中缺少的 const 限定符。
- 針對需要 propagate_on_container_copy_assignment 和 propagate_on_container_move_assignment 的有狀態用戶定義的分配器,修復了無提示的錯誤代碼生成。
- atomic<T> 現可容忍重載的 operator&()。
- 為提高編譯器吞吐量,STL 標頭現不會包含非必需編譯器內部函數的聲明。
- 略微改進了針對錯誤的 bind() 調用的編譯器診斷。
C++ IDE
現在默認使用全新的基於 SQLite 的數據庫引擎。 這將提高數據庫操作(如“轉到定義”和“查找所有引用”)的速度,並將極大地縮短初始解決方案分析時間。 設置已移至“工具”>“選項”>“文本編輯器”>“C/C++”>“高級”下(之前位於...“C/C++”>“實驗”下)。
我們改進了不使用預編譯標頭的項目和文件的 IntelliSense 性能 - 為當前文件中的標頭創建自動預編譯標頭。
還為錯誤列表中的 IntelliSense 錯誤添加了錯誤篩選和幫助。 單擊錯誤列現在允許進行篩選。 此外,單擊特定錯誤或按 F1 將啟動錯誤消息的聯機搜索。
增添了按類型篩選“成員列表”項的功能。
添了新的實驗性預測 IntelliSense 功能,此功能可根據上下文篩選成員列表中的所示內容。
新的“查找所有引用”UI 包括有關是否要從 C++ 代碼結果中的變量讀取或向其寫入的信息。
_RC 中的新增功能_已將“點到箭頭”IntelliSense 功能從實驗級提升為高級,且現在為默認啟用。 編輯器功能“展開作用域”和“展開優先級”也已從實驗級提升為高級。
_RC 中的新增功能_實驗性的重構功能“更改簽名”和“提取函數”現默認可用。
_RC 中的新增功能_我們啟用了用於 C++ 項目的新實驗性功能“快速項目加載”。 下次打開 C++ 項目時,加載速度將更快,並且越來越快!
_RC 中的新增功能_改進了“打開文件夾”體驗。 通過“打開文件夾”加載源,可編輯、構建和調試非 MSBuild C++ 項目。 通過以下 json 文件自定義體驗:
- 使用 CppProperties.json 可自定義 IntelliSense 和瀏覽體驗。
- 使用 Tasks.json 可自定義生成步驟。
- 使用 Launch.json 可自定義調試體驗。
_RC 中的新增功能_無需在根文件夾中創建 CppProperties.json 文件,C++ IntelliSense 便可正常工作。 此外,我們增添了一個新的下拉列表,允許用戶在分別由 CMake 和 CppProperties.json 文件提供的配置之間輕松切換。 “打開文件夾”中的 CMake 支持在使用“打開文件夾”打開 CMake 項目時會自動配置用於 C++ 編輯、構建和調試的環境。
_RC 中的新增功能_通過 CMakeLists.txt 文件所在的同一文件夾中的 CMakeSettings.json 文件提供進一步的配置支持。
C++ 安裝工作負荷
使用 C++ 的 Windows 桌面開發:
現提供原始 C++ 工作流的更細化的安裝體驗。 我們添加了可選組件,使你能夠僅安裝所需工具。 請注意,在安裝程序用戶界面中列出的組件的安裝大小的指示並不准確,而且它低估了整個大小。
使用 C++ 的 Linux 開發:
熱門擴展“用於 Linux 開發的 Visual C++”現已納入 Visual Studio。 此安裝提供開發和調試運行在 Linux 環境中的 C++ 應用程序所需的一切信息。
使用 C++ 的游戲開發:
以 DirectX 或 Cocos2d 為后盾,利用 C++ 的強大功能構建專業游戲。
使用 C++ 的移動開發(Android 和 iOS):
現可利用 Visual Studio 創建和調試面向 Android 和 iOS 的移動應用。
通用 Windows 平台開發:
C++ 是通用 Windows 平台開發工作負荷的可選組件。 當前必須手動完成 C++ 項目的升級:如果在 Visual Studio 2017 RC 中打開面向 v140 的 UWP 項目,且如果沒有安裝 Visual Studio 2015,則需要在項目屬性頁中選擇 v141 平台工具集。
Clang/C2 平台工具集
Visual Studio 2017 RC 附帶的 Clang/C2 工具集現在支持 /bigobj 開關,這對生成大項目來說至關重要。 它還在編譯器的前端和后端進行了多項重要的 bug 修復。
C# 和 Visual Basic
IDE 體驗和工作效率
Visual Studio 提供新的重構操作,用於通過單個操作組織源代碼:
- _RC 中的新增功能_使用初始值設定項簡化對象初始化:
- _RC 中的新增功能_利用新的 C#7 功能以內聯方式移動
out
變量聲明:
- _RC 中的新增功能_利用新的 C#7 功能,使用 null 合並運算符簡化 null 檢查和引發表達式:
- 將類型移動到匹配文件:通過
Ctrl+.
單擊一下,提取某文件中的類型並將其置於帶匹配名稱的另一文件。 - 同步文件和類型名稱:如果文件和類型名稱不同步,可使用
Ctrl+.
。 - 將
String.Format
轉換為字符串插值:借助此“快速操作”利用 C# 6 語言功能。
此版本還改進了 IntelliSense,可幫助在處理較大解決方案或不熟悉的代碼庫時提高工作效率。 我們為 IntelliSense 添加了圖標任務欄,可供你按類型(如方法、屬性、類等)篩選成員列表。 每個篩選器切換都具有關聯的鍵盤快捷方式,可以通過將鼠標懸停在該圖標上來發現。 若要啟用此功能,請轉到“工具”>“選項”>“文本編輯器”>“[C# |Visual Basic]”>“IntelliSense”,選擇篩選選項並突出顯示。
我們還添加/更新了樣式分析器,以幫助你自定義和強制執行團隊的編碼約定,包括:
- 命名樣式規則。
- 使用“var”或顯式類型。
- 對訪問成員 使用“this.” 或“Me.”。
- 缺少大括號。
-
缺少開關大小寫。
在此版本中包括的其他新功能:
- 你現在可以通過定位游標中間字符串並按 Enter 鍵,將一個長字符串拆分為多個串聯字符串。
- 一種將屬性轉換為方法的新的代碼操作。
- 現在我們可以在 NavigateTo 搜索結果中使用模糊匹配。
Visual Studio 2015 Update 還包括對 IDE 體驗的以下方面改進:
- 添加對 NuGet 包的引用以作為一種快速修復方式的選項。
- 使用 null 條件運算符簡化委托調用並引發事件的重構。
- 根據需要同步異步方法的重構。
- 對 Add Using 命令的改進,以支持“模糊”匹配拼寫錯誤的類型,包括添加任何所需的項目或元數據引用。
語言擴展和分析器
此版本還包括一些建議的新語言擴展,我們正在為 C# 和 Visual Basic 后續版本而對此不懈努力。 這些新增的語言功能默認啟動並包括:
對於 C#:
- 類似任務的異步方法返回類型:這可從異步方法中返回任何類似任務的類型。 以前,這些返回類型限制為
Task<T>
和Task
。 - 值元組 引入使用元祖臨時對一組類型化的值分組的語言支持。 若要了解詳細信息,請查看 GitHub 上的 設計說明。
- 嵌套的本地函數 對語言進行了擴展,以支持在塊范圍內聲明函數。
- 模式匹配擴展 通過函數式語言帶來了代數數據類型和模式匹配的許多優勢。
- 引用返回 使函數可以按引用返回值。
對於 Visual Basic:
- 值元組引入使用元組臨時對一組類型化的值分組時的語言支持:
Dim point As (x As Integer, y As Integer) = GetOffset()
。 - ByRef 返回消耗可擴展語言,支持使用具有 ByRef 返回的庫中的函數和屬性。
- 二進制文本和數字組分隔符允許二進制數的本機表示形式。 這對位掩碼和標志枚舉非常方便:
&B1001_0011
。
有關詳細信息,請關注我們的 GitHub 上的開發以了解這些以及其他建議的語言擴展和 API。
最后,我們投入了大量工作來提高存在用於計算診斷和 CodeLens 信息的后台操作時的 IDE 響應。
F#
對 F# 4.1 語言功能的支持:
- 與 C# 7/VB 15 元組互操作的結構元組。
- 支持使用 C# 7 ref 返回的 Byref 返回。
- 帶
[<Struct>]
屬性的結構記錄支持。 - 帶
[<Struct>]
屬性的結構可區分聯合支持。 - 新的
Result<'TSuccess, 'TFailure>
類型,帶有 FSharp.Core 中的支持函數。 fixed
關鍵字,其支持在堆棧上本地固定指針類型。- 數值文本中的下划線。
- 調用方信息特性參數。
- 同一文件中通過
namespace rec
和module rec
的相互引用類型和模塊。 - 模塊上與類型共享同一名稱的隱式“Module”后綴。
對 F# 編譯器和 FSharp.Core 的諸多改進:
- 改進了錯誤消息。
- 提升了 FSharp.Core 中的性能。
- 改進了 F# 和 C# 之間的互操作。
- 大幅改進了靜態解析的類型參數。
- 支持生成可移植的 PDB。
基於 Roslyn 工作區的新編輯器,具有以下功能:
- 文本完成。
- 類型着色。
- 基於 Roslyn 的“轉到定義”。
- 基於 Roslyn 的大括號匹配。
- 基於 Roslyn 的縮進。
- 基於 Roslyn 的斷點解決方法。
Python
除了針對核心編輯和調試體驗的許多改進和修復外,此版本還包括一個 Python 工作負荷,以便用戶可輕松選擇可選功能和簡化安裝。
- Python 工作負荷,用於開發腳本、Web 應用程序和使用熟悉的框架和包實現自動化。
- 數據科學工作負荷,用於使用 Python、R 和 F# 的交互式數據分析。
- 安裝選項提供自 Continuum Analytics,適用於 Python 或 Anaconda。
- Cookiecutter 資源管理器,用於搜索、安裝並從 Cookiecutter 模板生成項目。
- 使用 Ctrl+Enter 將當前行或代碼單元格發送到交互式窗口。
- 使用同一或不同版本的 Python 創建所需數量的交互式窗口。
- 將自定義腳本定義為啟動交互式會話時自動運行。
- 使用 Python 本機開發選項和 C++ 模板創建和調試用於 Python 3.5 和更高版本的 C 擴展。
- 編輯器和交互式窗口中文件名稱的完成。
- 現在,會在針對每個項目的單獨進程中運行代碼分析,從而優化並行和內存使用情況。
- 顯著改進了搜索路徑、壓縮、egg 和擴展模塊引用的性能。
可通過我們的 github 頁面獲取一個有關改進、bug 修復、參與者和 Python 語言支持的源代碼的完整列表。
R
R 語言支持作為數據科學工作負荷的一部分提供。 下面是對此版本的更改總結:
- 多個數據表查看器 + 對每個列排序。
- 從變量資源管理器刪除變量。
- 轉到庫函數的定義。
- 可折疊代碼區域。
- Intellisense、Peek in RMarkdown。
- 搜索光標下當前令牌的 Web 站點 (stackoverflow)。
- 繪制:Windows DPI 支持 + 定位符支持。
- 集成的 Microsoft R 客戶端。
JavaScript 和 TypeScript
TypeScript 2.1
_RC 中的新增功能_TypeScript 2.1 RC 適用於 Visual Studio 中的所有 TypeScript 項目。 TypeScript 2.1 提供下層 async/await、更好的類型推理、本地對象擴展及更多功能! 若要詳細了解此版本,請查看 發布博客文章或完整更改日志。
JavaScript 語言服務
提供新的 JavaScript 語言服務,並默認啟用。 新服務使用 TypeScript 定義文件來改進 IntelliSense,並包含對 JSDoc 注釋批注、ES6 和常見 JS 模塊格式的 IntelliSense 支持。 此外,它還支持 JSX 語法和 ES2016 的功能,如生成器、模塊和修飾器。
有關詳細信息,請參閱 GitHub 上的 Salsa 文檔。
用於 XAML 應用的工具
XAML Diagnostics
運行時工具欄現在具有跟蹤焦點的選項。 啟用后,正在運行的應用中每次焦點更改時,Visual Studio 中的實時可視化樹將自動選擇具有焦點的任何元素。 此功能旨在幫助開發人員跟蹤與焦點相關的問題,例如被錯誤地設置為制表位的元素。
XAML 編輯和繼續
Visual Studio 現在允許你在 WPF 或通用 Windows 應用運行的同時編輯 XAML,以及查看正在運行的應用的這些更改。 你可以在代碼編輯器中更改標記,相應的更改將反映在正在運行的應用中,而無需重新編譯應用程序。 此預覽版包括一些屬於正在進行開發的功能的改進和 Bug 修復。
增強 XAML 編輯器的生產力
- IntelliSense 篩選:鍵入 XAML 時,完成列表將僅顯示匹配的類型,且選中匹配度最高的項。
- IntelliSense for x:Bind:綁定到路徑和事件時,針對 X:Bind 完成了 IntelliSense。
-
命名空間完成:
-
RC 中的新增功能 如果不存在對命名空間的引用,則在鍵入時將不會獲得 IntelliSense 支持,但完成鍵入后,將獲得燈泡支持以生成和插入該類型的前綴並在 XAML 文檔中添加命名空間定義。
-
對於需要前綴的類型,如果已存在對命名空間的引用,IntelliSense 將自動完成前綴。
-
-
_RC 中的新增功能_命名空間前綴重命名重構:可從上下文菜單或在光標位於前綴上時使用鍵盤快捷方式 Ctrl+R+R 調用重命名操作。 還可在應用更改之前預覽更改。
-
_RC 中的新增功能_刪除命名空間和對其進行排序:現在可從上下文菜單或使用鍵盤快捷方式 Ctrl+R+G 刪除不必要的命名空間和對其進行排序。 如果 XAML 文檔具有不必要的命名空間,還將看到一個可用於刪除這些命名空間的燈泡標記。
-
對 XAML 編輯器的 .editorconfig 支持:可在 .editorconfig 文件中定義 indent_style、indent_size 和 tab_width 的設置,將用此設置替代“工具”>“選項”中定義的設置。
-
用於 XAML 編輯器的結構可視化工具:結構可視化工具(即縮進參考線)現已內置到 Visual Studio 中,無需單獨擴展。 通過此功能,一眼便能查看正在處理的代碼塊的上下文,無需滾動。
XAML 性能改進
- 改進了 XAML 選項卡的切換性能:XAML 選項卡切換性能已顯著增強,在一個客戶項目樣本中,我們發現切換時間減少幅度超過 90%。
- 解決 XAML 編輯器鍵入延遲問題:現在,XAML 鍵入變得前所未有的快速。 我們在此方面做了若干改進,大多數開發人員會發現 XAML 編輯器和 XAML IntelliSense 的響應性更高。 在使用第三方控件或大型控件庫的項目中編輯 XAML 文件時,這一點非常明顯。
通用 Windows 應用開發工具
- 更新的 .NET Native 工具鏈。 此更新的 .NET Native 工具鏈添加了好幾個優化功能,可提高 Visual Studio 中托管的 UWP 應用的運行時性能。 此版本包含 600 多個 bug 修復和功能,不僅解決了客戶的主要反饋問題,而且還提高了工具鏈的總體質量。
- 5.2.2 Microsoft.NETCore.UniversalWindowsPlatform 包。 .NET Core NuGet 框架庫的此次更新解決了客戶報告的許多關鍵問題。 現有的 UWP 項目可以使用 NuGet 引用管理器更新到此新版本。
- Windows 10 周年更新 SDK 和仿真器。 此版本中包括 Windows 10 周年更新的 Windows SDK 和 Windows Phone 仿真器。
- 現可使用較少的 XAML 標記從工具箱創建 UI 元素,讓 XAML 更簡潔、更易讀。
- 通過 XAML 設計器上的新選項工具,開發人員可選擇要在設計圖面上預覽的 UI 主題和高對比度設置。
- “屬性”窗口中的值編輯器現接受簡單的數學公式,如“60 + 20”。 將立即計算公式(本例中等於 80),生成的值放入 XAML。
用於創建視覺資產的清單設計器功能
清單設計器進行了可視化刷新,現還可生成 UWP 應用的視覺資產。 現可使用單個源映像創建各種尺寸的磁貼、徽標、圖標和初始屏幕,以適合應用針對的每種設備的大小。
UI 分析
現在,通用 Windows 平台可檢測一些與輔助功能或性能相關的常見問題。 通過在“診斷工具”窗口的“選擇工具”菜單中啟用“UI 分析”工具,可報告這些問題,並隨附有關闡釋問題原因和解決方法的有用文章的鏈接。
Visual Studio 用於 Apache Cordova 的工具
此 Visual Studio 2017 RC 版包括以下改進:
- Cordova 模擬。 基於瀏覽器的新模擬器可實現快速編碼並即時在瀏覽器中查看結果。 實時重新加載、插件模擬和 Ionic 框架支持使 Visual Studio 擁有市場中最快的開發人員工作流。
-
支持 iOS 10 和 XCode 8。 用於 iOS 開發的
remotebuild
生成代理的更新現包括 XCode 8 支持。 -
錯誤着色。 診斷生成故障經常需要開發人員通讀生成輸出,因此我們開始在生成輸出窗格中將錯誤着色,讓讀取變得更輕松。 此外,還添加了標頭來描述生成進度中的步驟,幫助開發人員識別生成進度中出現故障的位置。
- 產品隨附。 除了用於加速 Cordova 應用構建的輕量級安裝,現在添加了來自 Visual Studio 內的路徑以在開發過程中獲取額外的生成塊。 如果未安裝 Android 或 Windows 組件,可通過部署欄獲取它們,部署欄將啟動 Visual Studio 安裝程序,在安裝過程中為用戶提供指導。
- 快速可靠的生成。 新的 Visual Studio 安裝程序,結合經過完全驗證的第三方組件工具鏈的脫機安裝,可加快生成速度,且這些生成更易於進行故障排除和修復。
重要說明:
- 適用於 Android 和 Windows 的生成工具和仿真程序現在是可選的。 可通過生成/部署菜單欄動態獲取它們。
- 此版本的 Visual Studio 不支持 Windows Store 8.1 項目。 建議你以 Windows 10 為目標來更新 Cordova 項目。
- 最低的受支持 Cordova 版本提升至 6.0.0。 面向低於 6.0.0 的 Cordova 版本的項目只有在
config.xml
中升級其項目才能在 Visual Studio 2017 RC 中進行生成和部署。
Xamarin(預覽版)
Visual Studio 2017 RC 中包括 Xamarin 4.3。 除了大量的 Bug 修復,該版本還添加了對 tvOS 的支持,提升了 iOS 資產目錄支持,改進了 XML 編輯體驗,並在創建 iOS 應用時添加了 SSL/TLS 和 HttpClient 實現的選擇器。 有關更多信息,請參閱 Xamarin 發行說明。
NuGet
Visual Studio 2017 RC 包括 NuGet 4.0 RC。 此版本側重於支持大多數項目類型的包引用、質量改進和性能改進:
-
在 .NET Core 和 ASP.NET Core 項目中,現使用包引用管理包。
-
在 Visual Studio 2017 及更高版本中,計算機范圍內的 NuGet.config 現位於 @ %PROGRAMFILES(X86)%\NuGet\Config\NuGet.config。 今后 nuget.exe v4.0.0 + 也將考慮為計算機范圍內的配置使用新位置。 將不再隱式引用程序數據中的 NuGet.config 或考慮將其用於 nuget.config 的層次結構合並。
開發人員分析工具
Visual Studio 2017 RC 包括開發人員分析工具 v8.3,其中包含以下改進:
- CodeLens 中的請求遙測。
- Application Insights 配置,一個用於將 Application Insights 添加到項目和管理 Application Insights 設置的窗口。
- 查看新的“跟蹤操作”選項卡中的一個操作所涉及的事件,該操作針對 Application Insights 搜索中的事件執行。
- 診斷工具中請求的生產遙測信息。
- 從 Application Insights 搜索中事件的詳細信息創建工作項。
- 使用自定義 ASP.NET 路由優化遙測事件和服務的 ASP.NET 控制器方法之間的映射。
- HockeyApp SDK 已更新到版本 4.2.2。
- Application Insights 趨勢中的篩選器窗格現可調整大小。
有關詳細信息,請參閱 Microsoft Azure 文檔中的技術發行說明。
團隊資源管理器
連接到 VSTS
在 Visual Studio 起始頁上,對在 VSTS 中連接到項目和克隆存儲庫的過程進行了個性化和簡化。 全新的“連接”頁面僅顯示已在所有 VSTS 帳戶中映射和克隆的項目和存儲庫(而非顯示每個項目的每個存儲庫)。 此外,你在克隆存儲庫前不再需要連接到某個項目。
工作項表單
如果從 Visual Studio 2017 RC 連接到 Visual Studio Team Services 並打開工作項,Web 瀏覽器中會顯示工作項表單。 不過,如果你連接到的是 Team Foundation Server 2015 或更早版本,則看到的是舊版工作項表單。
SQL Server Data Tools
Visual Studio 2017 RC 包含了 SQL Server Data Tools 的最新更新,該更新支持 Azure SQL 數據庫 和 SQL Server 2016 的最新功能。
此版本通過使用 Visual Studio,在所有 SQL Server 支持版本和數據庫平台上(本地和雲),匯集開發、測試和部署數據庫的簡便性於一體。 版本還包括了數據庫可編程性外圍應用增強功能,並改善了 SQL Server Data Tools 中的 SQL 連接體驗。現在只需輕松地單擊一下,即可自動發現可連接到的 SQL Server 和 Azure SQL 數據庫。
此外,Visual Studio 2017 RC 解決了新的 Azure SQL Database 身份驗證類型、Azure Active Directory 集成和密碼身份驗證問題。
Visual Studio 的 Office 開發工具
此 RC 版包含了附帶最新功能和更新的 Office 開發人員工具,具體如下:
- 新增了特定於 Excel、Word、PowerPoint 和 Outlook 的新 Office 外接程序模板。
- 支持新增的 Office 外接程序功能,如外接程序命令、Fabric UI 和 Office.js 的新版本。
- 模板中新增了起始代碼,用於展示如何開始使用新的 Office 外接程序功能。
- 支持 SharePoint 解決方案中的 SharePoint 2016 和外接程序模板。
Visual Studio 軟件開發人員工具包
自 Visual Studio 2017 RC SDK 起,突破性地改進了 Visual Studio 使用項目和項模板的方式,提升了模板發現的性能。 新的發現機制現在要求所有項和項目模板均遵循模板清單文件中定義的以下“vstemplate”架構。 模板清單文件中未定義的 Visual Studio 模板在“新建項目”或“新建項”對話框中將不再可見。 新的 VSSDK 工具將在 VSIX 生成期間生成清單,如果你有作為 MSI 程序包的一部分發布的 Visual Studio 模板,則必須為這些模板手動生成模板清單文件。 有關詳細信息,請訪問升級 Visual Studio 2017 的自定義項目和項模板 MSDN 頁面。
用於 .NET 的 Azure SDK
現可使用新的 Visual Studio 安裝程序安裝 Azure SDK for .NET Visual Studio。 如果以前已使用 Web 平台安裝程序安裝 Azure SDK for .NET,現則可使用新的 Visual Studio 安裝程序安裝 Azure 工作負荷以獲取相同組件。 安裝的包與 SDK 2.9.5 版本具有相同的功能級別。 對於此版本和所有未來版本的 Visual Studio,只能通過 Visual Studio 安裝程序獲得 Azure SDK for .NET。
適用於 Visual Studio 的 Node.js 工具
適用於 Visual Studio 的 Node.js 工具將 Visual Studio 變成功能強大的 Node.js 開發環境。 此版本側重穩定性、性能和總體產品質量,包括:
- 優化了與新的 Salsa JavaScript 語言服務之間的集成。
- 降低了內存和 CPU 使用率,縮短了項目加載時間。
- Pug 模板文件支持。
- 更多最新式的項目模板。
- Mocha 3.x 測試框架支持。
- 大量 Bug 修復。
感謝你與所有參與者們為此版適用於 Visual Studio 的 Node.js 工具的推出所做出的積極貢獻。 有關詳細信息,請查看開放源 GitHub 上的 Node.js 工具項目。
適用於 Unity 的 Visual Studio 工具
使用 Visual Studio 編寫和調試適用於所有平台的 Unity 游戲。
適用於 Unity 的 Visual Studio 工具 3 預覽版現已可通過新的 Visual Studio 2017 RC 安裝程序中的“使用 Unity 的游戲開發”工作負荷進行安裝。
適用於 Unity 的 Visual Studio 工具 3 預覽版側重於改進 Unity 開發人員的代碼編輯和調試體驗,以及總體產品質量,包括:
- Unity 消息的 Intellisense 支持。
- Unity 消息的代碼着色。
- 改進了 Unity 調試器中的表達式計算。
- 改進了 Unity 消息向導,支持所有可接收消息 Unity 類型。
- 大量 Bug 修復和優化。
.NET Core 和 Docker(預覽版)
_RC 中的新增功能_獲取未來的 .NET Core 工具的早期預覽版。 該預覽版作為安裝程序中“.NET Core 和 Docker 工具(預覽版)”下的工作負荷提供。 這是早期預覽版,最適合用於簡單的新項目。 該預覽版存在若干個已知問題。 此版本中的高級功能包括:
- .NET Core 項目的 MSBuild 支持和簡化的 csproj 項目格式,使用該格式可輕松實現手動編輯,而無需卸載項目。
- 項目文件中的文件通配符支持,可實現無需包含單獨文件的基於文件夾的項目。
- NuGet 包引用現在是 csproj 格式的一部分,從而將所有項目引用合並在一個文件中。
- .NET Core 項目和 .NET Framework 與 Xamarin 項目之間的互操作。 例如,.NET Core 項目現可引用標准(即非核心).NET 項目。
- 一個項目中跨目標的多個目標框架。
- Web 發布從 PowerShell 移動到 MSBuild。
- 使用 IDE 或命令行接口 (CLI) 將現有 .NET Core 項目從 project.json 遷移至 csproj。
- 輕松配置 ASP.NET Core 應用程序與 Docker 支持的持續生成集成和配置從 Visual Studio IDE 內部到 Azure 容器服務的持續生成交付。
有關 .NET Core 工具的最新問題列表,請參閱我們的 GitHub 頁面。
已知問題
以下是有關此 RC 版本中的已知問題和可用解決方法的說明。
安裝問題
Visual Studio 2017 RC 中的語言包支持
-
問題:
此版本的 Visual Studio 僅支持用於用戶界面的單個語言包。 不能在同一 Visual Studio 實例中為用戶界面安裝兩種語言。 此外,必須在初始安裝過程中選擇 Visual Studio 的語言,且無法在“修改”期間更改。
-
解決方法:
下一個版本將解決這些已知問題。 要更改此版本中的語言,可卸載並重新安裝 Visual Studio。
O365 和 Azure AD 身份驗證服務功能的域下拉列表為空
-
問題:
位於“服務功能”屏幕時,會看到一些服務功能。 如果單擊 Office 365 API 或 Azure AD 身份驗證,則會顯示域下拉列表。 如果已登錄到 Visual Studio,此下拉列表中應填充此用戶有權訪問但卻為空的域。 如果應有域,但卻沒有出現,那么應采用下列解決方法。 如果無用戶登錄到 Visual Studio 或帳戶管理對話框中未添加任何帳戶,則下拉列表可能為空。 如果帳戶的憑據已過期,則下拉列表也可能為空。
-
解決方法:
運行 Visual Studio 安裝程序並修改已安裝的產品,以在“Web 和雲”部分下包含“Azure 開發”工作負荷。
安裝失敗時無重試按鈕
-
問題:
如果在安裝時發生非致命錯誤(例如無法安裝可選組件),將顯示一個消息框,指示出現錯誤,並附有日志鏈接。 關閉消息框時將安裝 Visual Studio,但並非所有工作負荷在安裝中都可用。 已安裝的產品列表中不會顯示任何警告。
-
解決方法:
單擊“修改”以確認需要安裝的組件。 否則,使用“修復”嘗試再次安裝這些組件或工作負荷。
脫機安裝需要 Internet 連接才能下載安全證書
安裝適用於通用 Windows 應用的工具時出現“安裝失敗”錯誤
-
問題:
在安裝通用 Windows 應用工作負荷時,如果在安裝 Visual Studio 2017 RC 之前卸載了 Visual Studio 2015,可能會收到“安裝失敗”錯誤。 安裝日志還包含 Windows SDK 錯誤,“未能安裝包 ‘Win10SDK_版本。 ...詳細信息:下載產品時出現問題。”
-
解決方法:
解決此問題:
- 從“程序和功能”中,選擇 Windows 軟件開發工具包,然后單擊“更改”,或下載並運行 Windows 10 SDK (14393) 安裝程序。
- 在 Windows SDK 安裝程序中,選擇“Windows 軟件開發工具包”和“.NET Framework SDK”功能。
- 運行 Visual Studio 安裝程序,單擊“修改”,然后單擊“安裝”。 不需要更改任何功能選擇。
安裝 Test Pro 后,可能無法使用開始菜單啟動 Visual Studio
-
問題:
在已安裝 Visual Studio 2017 的計算機上安裝 Microsoft Test Professional 時,Visual Studio 2017 的開始菜單項可能會從不同於首次安裝的目錄的目錄中啟動非工作的 Visual Studio 安裝。
-
解決方法:
修復 Visual Studio 安裝以修復啟動工作安裝的開始菜單項。
即便是安裝了多個版本的 Visual Studio ,也只有一個 Visual Studio 開始菜單項可用
-
問題:
在 Visual Studio 2017 RC 中,可並行安裝多個 SKU(例如社區版和企業版)。 在此情況下,開始菜單快捷方式將啟動最近安裝的產品 SKU。 類似地,卸載多個 SKU 中的任何一個后,可移除所有 SKU 的快捷圖標。
-
解決方法:
可以通過從目標安裝文件夾啟動 devenv.exe 並查看產品安裝的 Common7\IDE 子目錄來啟動 SKU。 否則,修復所需應用程序會更新開始菜單項。
無法在 Windows 7 上執行 Feedback Client
-
問題:
當運行請求的反饋時,由於缺少協議關聯,在 Windows 7 上執行此操作可能會失敗。
-
解決方法:
在受影響的計算機上使用 Feedback Client 手動更新 mfbclient:// 協議。 可以通過轉到“默認程序”,選擇 Feedback Client,選中“mfbclient”協議旁邊的復選框,然后單擊“保存”來執行此操作。
編輯器和 IDE 問題
無法向阿拉伯語(沙特阿拉伯)系統添加帳戶
-
問題:
當嘗試登錄到安裝在阿拉伯語操作系統上的 Visual Studio 時,會發生一個錯誤,導致無法完成登錄。
-
解決方法:
- 確保已關閉 Visual Studio。
- 確保終止所有 ServiceHub.Host.Node.x86.exe 進程。
- 在以下路徑中創建一個空文件:%localappdata%.identityservice\IdentityServiceAdalCache.cache
- 重新啟動 Visual Studio。
保存依賴項驗證關系圖時不再觸發分析
XML 文件不支持 EditorConfig
尚不支持 EditorConfig insert_final_newline 屬性和 trim_trailing_whitespace 屬性
“跳行”可能導致 Visual Studio 在未打開任何文件的情況下停止響應
-
問題:
如果啟動 GoTo 窗口,然后在未打開任何文件的情況下選中行號篩選器,Visual Studio 將停止響應且所有未保存的工作將丟失。
-
解決方法:
確保先打開一個文檔,然后再嘗試導航到特定行號。
無法生成新的網站項目
-
問題:
當在安裝了 PowerShell 2.0 的計算機上創建新網站項目並生成它時,會看到一個錯誤:“找不到路徑 website\bin\roslyn\csc.exe 的部分”。
-
解決方法:
從 PowerShell 2.0 升級到 3.0 或更高版本。
如果在安裝時使用 Git Bash shell,Visual Studio 安裝可能會失敗
-
問題:
如果在安裝 Visual Studio 2017 RC 時使用 Git Bash shell,Visual Studio 安裝可能會失敗。
-
解決方法:
若要解決此問題,請確保安裝期間未運行 Git Bash shell。
如果未打開 Blend,則“在 Blend 中設計”不會打開
-
問題:
如果已在 VS 中打開一個解決方案,當右鍵單擊 UWP 項目或 XAML 文件時,並選擇“在 Blend 中設計...”,Blend 將不會啟動。
-
解決方法:
首先打開 Blend,然后右鍵單擊並選擇“在 Blend 中設計...”,項目會在 Blend 中打開。
CSharp 和 VB IntelliSense 完成列表故障
-
問題:
在某些情況下,CSharp 和 Visual Basic IntelliSense 完成列表可能會停止工作,直到關閉並重新打開受影響的文件或項目為止。
-
解決方法:
此故障的可能補救措施包括:
- 禁用完成篩選功能:轉到“工具”>“選項”>“文本編輯器”>“[C# | Basic]”>“IntelliSense”,並取消選中“顯示完成項篩選器”。
- 關閉硬件圖形加速功能:轉到“工具”>“選項”>“環境”>“常規”,並取消選中以下選項:“根據客戶端性能自動調整視覺體驗”、“啟用豐富客戶端視覺體驗”和“使用硬件圖形加速(如果可用)”。
無法從 devenv.exe 進程外部創建 EnvDTE
-
問題:
如果具有通過 COM 自動化自動執行 Visual Studio 環境的工具或腳本,則該腳本或工具無法繼續使用
Acivator.CreateInstance()
或CoCreateInstance()
來啟動 devenv.exe 進程。 已棄用此支持,以便可同時安裝同一版本的多個 devenv.exe。 -
解決方法:
需要更新腳本和工具以使用所需的精確路徑啟動特定應用程序,然后從運行對象表中獲取 EnvDTE 對象。
NuGet 問題
在啟用輕量級解決方案加載的情況下,生成不再觸發還原
對項目運行“dotnet 包”,收到包含 PackageReferences 結果的重復導入警告
-
問題:
.NET Core 項目 - 對項目運行“dotnet 包”,收到包含 PackageReferences 結果的重復導入警告 NuGet#3665。
-
解決方法:
無。
csproj(以前稱為導入)中的 PackageTargetFallback 屬性不剪裁空格,導致還原失敗
-
問題:
.NET Core 項目 - csproj(前身為 imports)中的 PackageTargetFallback 屬性不會修整從 msbuild 屬性收到的空白。 在值的開頭和末尾放置一個分號,可確保還原仍將起作用,即使將 xml 元素的格式重新設置為跨 3 個行也是如此。 NuGet#3819。
-
解決方法:
確保 TFM 條目左側或右側無空格。
測試工具問題
分析代碼覆蓋率對 Python 測試不可用
調試 C++ UWP 單元測試不會命中斷點
使用 .testsettings 文件從命令行運行測試
發現目標為 .NET Core 的測試
-
問題:
從代碼編輯器上下文菜單啟動 Run/Debug 命令時,不會發現目標為 .NET Core 的基於 MSTest 的測試。
-
解決方法:
升級對 MSTest.TestAdapter NuGet 包的引用。
在具有多個目標框架的解決方案中發現測試
Visual Studio 2015 的 UWP 測試項目會引發編譯時錯誤
為適用於 UWP 應用的編碼的 UI 測試生成代碼可能會導致錯誤
-
問題:
使用適用於 UWP 應用的“編碼的 UI 測試”生成器生成代碼時,可能無法正常工作,可能會遇到“系統找不到指定文件”的錯誤。
-
解決方法:
解決方法是修改 Visual Studio 2017 RC 安裝並包括“.NET 桌面開發”工作負荷。
啟用輕量級解決方案加載時“測試資源管理器”中的測試發現
-
問題:
如果啟用了輕量級解決方案加載,則當 Visual Studio 的一個全新實例中存在一個打開的測試項目時,測試資源管理器不會發現測試。
-
解決方法:
關閉解決方案,然后將其重新打開,將開始發現測試。
在 Visual Studio 2015 中創建的使用 IntelliTest 的測試項目不執行生成操作
-
問題:
在 Visual Studio 2015 中創建的使用 IntelliTest 的測試項目不執行生成操作。
-
解決方法:
打開測試項目的 .csproj 文件,並將 Microsoft.Pex.Framework.dll 的 hintpath 更改為 VSInstallPath\Common7\IDE\Extensions\Microsoft\Pex\Microsoft.Pex.Framework.dll。
在 Visual Studio 2015 中創建的 C++ 測試項目不執行生成操作
-
問題:
在 Visual Studio 2015 中創建的 C++ 測試項目不執行生成操作。
-
解決方法:
打開測試項目的 .vcxproj 文件,並將包含單元測試標頭文件的文件夾包括到 <AdditionalIncludeDirectories> 中。
對於以 x64 為平台目標的測試項目,不會發現順序測試和一般測試
在基於雲的負載測試期間使用 Application Insights 收集應性能數據
-
問題:
將 Application Insights 配置為在基於雲的負載測試期間收集應用性能數據后,可能會收到一個或多個錯誤。 對預配置的應用程序執行現有的基於雲的負載測試時,將不會收集任何應用性能數據。
-
解決方法:
目前沒有解決方法。 可使用 Azure 門戶監視應用。
在 Windows 7 計算機上執行編碼的 UI 測試失敗
-
問題:
在 Windows 7 計算機上執行編碼的 UI 測試失敗,並顯示錯誤“未能初始化單元測試擴展 ‘urn: CodedUITest’: 一個單元測試擴展未注冊以下屬性: Microsoft.VisualStudio.TestTools.UITesting.CodedUITestAttribute”。
-
解決方法:
編輯注冊表並創建以下條目:
- 添加注冊表項 [HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\VisualStudio\15.0\EnterpriseTools\QualityTools\TestTypes{13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b}\TestTypeExtensions\CodedUITestAttribute]。
- 向此項添加一個名為 AttributeProvider 且值為 Microsoft.VisualStudio.TestTools.UITesting.CodedUITestAttribute, Microsoft.VisualStudio.QualityTools.CodedUITestFramework, Version=15.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 的字符串值。
不能在同一台計算機上並行安裝 Test Controller/測試代理 2017 預覽版和 Visual Studio 2017 RC
-
問題:
不能在同一台計算機上並行安裝 Test Controller/測試代理 2017 預覽版和 Visual Studio 2017 RC。 這樣做可能會導致 Visual Studio 安裝無法進行。
-
解決方法:
Test Controller/測試代理 2017 預覽版應安裝在單獨的計算機上。
通用 Windows 應用開發工具問題
調試 .NET Native 應用程序時可能需要網絡訪問
-
問題:
當調試 .NET Native 應用程序時,可能需要從需進行網絡訪問的符號服務器下載調試支持庫。 如果沒有網絡訪問,可能無法正常進行調試。
-
解決方法:
在具有網絡訪問的計算機中(在脫機之前)調試 .NET Native 應用程序至少一次。 這將確保將必要的調試庫填充到符號緩存中,並在計算機脫機時可用於調試。
生成空白 .NET 通用 Windows 應用時生成警告
實時單元測試問題
如果解決方案包含 VB 或 CSharp 以外的項目時,活動單元測試不起作用
實時單元測試不適用於 .NET Core 項目
實時單元測試不支持所有單元測試功能
實時單元測試不支持所有單元測試功能
實時單元測試和測試資源管理器窗口集成問題
實時單元測試不支持用於創建新 appdomain 的測試
重命名解決方案后,必須重啟實時單元測試
輕量級解決方案加載問題
啟用輕量級解決方案加載后,某些擴展可能會發生意外行為
生成時,不會還原 NuGet 包
如果磁盤上不存在項目文件,將跳過生成
如果項目依賴項更改,可能會跳過 C++ 項目生成
對於已加載的解決方案,出現“正在加載...”指示器
Visual Basic 項目中的虛假錯誤
Web 開發工具問題
不支持 MVC 4 項目
-
問題:
使用 Visual Studio 2017 RC 提示打開 MVC 4 項目以安裝缺少的功能 - .NET 桌面開發,但無法成功執行操作。 即使在安裝缺少的功能后,項目也不會加載到解決方案資源管理器中,並顯示為不兼容。
-
解決方法:
沒有解決方法,將來會添加相應支持。
新的 ASP.NET 單頁面應用程序在運行時遇到錯誤
-
問題:
創建新的 ASP.NET 單頁面應用程序后,當嘗試調試應用程序時,會在瀏覽器中遇到以下錯誤。 未能加載文件或程序集“Microsoft.AI.Web”或它的某一個依賴項。 系統找不到指定的文件。
-
解決方法:
該問題是由於無法正確將包引用添加到項目文件(.csproj 文件)所致。 要解決此問題,請在文本編輯器中打開 .csproj 文件,並手動添加包引用:
<Reference Include="Microsoft.ApplicationInsights">
<HintPath>..\packages\Microsoft.ApplicationInsights.2.1.0\lib\net45\Microsoft.ApplicationInsights.dll</HintPath>
</Reference>
<Reference Include="Microsoft.AI.Agent.Intercept">
<HintPath>..\packages\Microsoft.ApplicationInsights.Agent.Intercept.1.2.1\lib\net45\Microsoft.AI.Agent.Intercept.dll</HintPath>
</Reference>
<Reference Include="Microsoft.AI.DependencyCollector">
<HintPath>..\packages\Microsoft.ApplicationInsights.DependencyCollector.2.1.0\lib\net45\Microsoft.AI.DependencyCollector.dll</HintPath>
</Reference>
<Reference Include="Microsoft.AI.PerfCounterCollector">
<HintPath>..\packages\Microsoft.ApplicationInsights.PerfCounterCollector.2.1.0\lib\net45\Microsoft.AI.PerfCounterCollector.dll</HintPath>
</Reference>
<Reference Include="Microsoft.AI.ServerTelemetryChannel">
<HintPath>..\packages\Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.2.1.0\lib\net45\Microsoft.AI.ServerTelemetryChannel.dll</HintPath>
</Reference>
<Reference Include="Microsoft.AI.WindowsServer">
<HintPath>..\packages\Microsoft.ApplicationInsights.WindowsServer.2.1.0\lib\net45\Microsoft.AI.WindowsServer.dll</HintPath>
</Reference>
<Reference Include="Microsoft.AI.Web">
<HintPath>..\packages\Microsoft.ApplicationInsights.Web.2.1.0\lib\net45\Microsoft.AI.Web.dll</HintPath>
</Reference>
在 VB ASP.NET 項目中收到有關“對象初始化可進行簡化”的消息
-
問題:
在創建 VB ASP.NET 項目(例如:Web 窗體或 MVC 5)后,生成項目后會在錯誤列表中看到以下消息:
消息 IDE0017 對象初始化可進行簡化 RouteConfig.vb
-
解決方法:
無,現在可安全忽略該消息。
對於 OData v3,MVC5 基架搭建失敗
-
問題:
嘗試使用實體框架通過“操作”對 Odata v3 控制器搭建基架失敗,並收到錯誤,指示找不到文件“\Common7\IDE\EnvDTE”。
-
解決方法:
-
編輯以下文件:
- 對於 C# 項目:“VSInstallDir\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates\ODataControllerWithContext\Controller.cs.t4”
- 對於 VB 項目:“VSInstallDir\Common7\IDE\Extensions\Microsoft\Web\Mvc\Scaffolding\Templates\ODataControllerWithContext\Controller.vb.t4”
刪除行
<#@ assembly name="EnvDTE" #>
-
然后保存文件。
-
無法還原 Bower 包
-
問題:
無法還原 Bower 包。
-
解決方法:
- 打開工具 | 選項。
- 在左側窗格的“選項對話框”中,選擇“項目和解決方案”|“外部 Web 工具”。
- 將以下路徑添加到“外部工具位置”列表:"$(DevEnvDir) \CommonExtensions\Microsoft\TeamFoundation\Team Explorer\Git\mingw32\bin"。
- 單擊“確定”。
.NET Core 工具問題
在多個方案中,遷移中斷
“打開文件夾”問題
編輯 launch.json 或 tasks.json 時 IntelliSense 不可用
C# 重構可能會生成不一致的結果
從文件夾轉換為解決方案可能會導致空白解決方案資源管理器
-
問題:
當從文件夾視圖打開一個與文件夾名匹配(例如 MySolution/MySolution.sln)的解決方案時,解決方案資源管理器可能會保持為空白狀態。
-
解決方法:
關閉文件夾,然后通過“解決方案”->“打開”->“項目”/“解決方案”,打開解決方案。
擴展性問題
Visual Studio 關閉延遲
-
問題:
關閉 Visual Studio 后,可能會有一些不會立即結束的殘留的進程。 這些進程在 Visual Studio 關閉后會繼續運行約 30 秒。 等待 Visual Studio 關閉的任何操作也需要等待殘留的進程結束。
-
解決方法:
如果嘗試完成安裝擴展等需要等待與 Visual Studio 相關的所有進程結束的操作,但又不想等待殘留的進程結束,則可以轉到“任務管理器”->“更多詳細信息”->“詳細信息”,按 PID 查找這些進程,然后結束這些進程。
擴展無法自動更新
當對使用“提升”安裝的擴展執行“停用更新”操作時,VSIX 安裝程序無響應
-
問題:
如果擴展未標記為“所有用戶”,但是使用“提升”安裝的,則在不進行提升的情況下嘗試更新該擴展將導致 VSIX 安裝程序無響應。
-
解決方法:
運行
VSIXInstaller /uninstall:<vsixid>
兩次可成功刪除該擴展。 然后可安裝該擴展的更新版本。
在安裝到實驗實例期間,包含空格的文件路徑解析不正確
-
問題:
在安裝到實驗實例期間,包含空格的任何文件路徑中的空格將替換為 20%。
-
解決方法:
如果要引用 Microsoft.VSSDK.BuildTools NuGet 包,需要將其更新到最新版本。 如果不引用,將需要添加該引用:
- 右鍵單擊解決方案,然后選擇“管理解決方案的 Nuget 包…”
- 搜索 Microsoft.VSSDK.BuildTools 並安裝
其他
XSLT 探查器支持不可用
SQL Server Data Tools 中不支持“輕量級解決方案”
將自動化與測試用例關聯
-
問題:
默認情況下,Visual Studio IDE 中的測試用例工作項表單在 Web 視圖中打開。 因此,用戶無法將自動化分配給測試用例。 即是,使用測試用例工作項的 Web 視圖將測試方法關聯到測試用例。
-
解決方法:
可在 Visual Studio 的兼容性模式下打開測試用例工作項,使用“關聯自動化”選項卡繼續將測試方法關聯到測試用例。 具體方法為: 轉到“工具”>“選項”>“工作項”。 將“工作項打開位置”設置更改為“Visual Studio”(兼容模式)。
將 Python發布到 Azure App Service 可能會失敗
-
問題:
從 Python 項目發布到 Azure App Service 可能會失敗,或導致 Visual Studio 凍結。
-
解決方法:
請訪問 https://aka.ms/PythonOnAppService 獲取備選方法。
在 Visual Studio 運行時安裝 Python
-
問題:
如果在 Visual Studio 處於打開狀態時安裝 Python,Visual Studio 可能無法正確識別新安裝的 Python。
-
解決方法:
安裝 Python 之前請先關閉 Visual Studio。
使用計算仿真程序調試 Azure 雲服務
-
問題:
Azure 計算仿真程序速成版需要 C 運行時 11 版,但此版本不再隨 Visual Studio 一起安裝。
-
解決方法:
如果選擇使用 F5 運行仿真程序,Visual Studio 會檢測到未安裝運行時,並詢問是否要安裝。 如果選擇安裝,Visual Studio 將下載安裝程序並進行安裝。 然后可使用 F5 重啟調試會話。
尚不支持使用雲服務部署 RemoteDebugger 和 IntelliTrace
-
問題:
Visual Studio 2017 RC 中尚不支持使用雲服務部署 RemoteDebugger 和 IntelliTrace。 在 Visual Studio 2017 結束之前,將提供此支持。
-
解決方法:
目前沒有解決方法。
在某些 Windows 7 SP1 計算機上,“Microsoft.VisualCpp.Redist.14”的安裝可能需要花費數小時來完成
-
問題:
在具有 Windows 7 SP1 的未修補的計算機上,安裝 Windows 更新包時,可能會出現明顯的掛起現象。 在 Microsoft.VisualCpp.Redist.14 中,這是專用的 KB2999226,用於在計算機上安裝 Windows 通用 CRT 運行時。 請注意,安裝最終會完成,但可能會花費數小時的時間。
-
解決方法:
• 解決方法是先安裝 https://support.microsoft.com/en-us/kb/3172605,其中包括 OS 修補程序,然后再安裝 Visual Studio 2017 RC。 • 還可能通過在 Visual Studio 安裝期間禁用自動更新來解決此問題。
安裝 Test Professional 2017 RC SKU 后,用戶無法在 Visual Studio IDE shell 中訪問團隊資源管理器
-
問題:
安裝 Test Professional 2017 RC SKU 包之后,如果嘗試在 Visual Studio IDE 中訪問團隊資源管理器,IDE shell 可能會關閉並收到內容為許可證過期的錯誤,或顯示錯誤的版本信息。 由於此問題,可能無法訪問任何基於 Excel 或基於 SSRS 的測試報告,這些報告用於測試需求,並顯示在團隊資源管理器中。 此問題不會影響到 Microsoft 測試管理器 (MTM) 客戶端 – 它將繼續工作,不會產生任何已知問題。
-
解決方法:
我們正在努力解決此問題,但在此期間,如果需要訪問團隊資源管理器和/或基於 Excel 或基於 SSRS 的報告,可安裝“Visual Studio Professional 2017 RC”或“Visual Studio Enterprise 2017 RC”包,並通過它來訪問團隊資源管理器。
為某些 KOR SKU 提供的 EULA 不正確
-
問題:
安裝期間為以下 SKU 的朝鮮語版本的用戶提供的 EULA 不正確: • Visual Studio 2017 性能工具 RC SKU • Visual Studio 2017 遠程工具 RC SKU • Visual Studio 2017 IntelliTrace 收集器 RC SKU • Visual Studio 2017 VC++ Redist RC SKU
-
解決方法:
這些 SKU 的朝鮮語版本的正確 EULA 可通過訪問后列網址獲取:https://go.microsoft.com/fwlink/?LinkId=829617&clcid=0x412。
引導程序中顯示的繁體中文 SKU 的 EULA 不正確
-
問題:
安裝期間針對以下繁體中文 SKU 的用戶錯誤地顯示了簡體中文 EULA: • Visual Studio 2017 Enterprise RC SKU • Visual Studio 2017 Professional RC SKU • Visual Studio 2017 Community RC SKU
NOTE: This only affects the license terms link in the first UI screen (bootstrapper) seen when installing VS.
-
解決方法:
可在以下網址獲取這些 SKU 的正確 EULA:https://www.visualstudio.com/zh-hant/license-terms/mlt551018。
在與 C 中元組共享的項目/鏈接的文件中,Visual Studio 停止響應
-
問題:
如果鍵入對一個方法的方法調用,且該方法采用多個項目(鏈接的文件或共享的項目)中包含的一個文件中的一個 Tuple 參數,則 Visual Studio 會停止響應。
-
解決方法:
在“工具”\“選項”\“文本編輯器”\C# 中取消選中“參數信息”,或不使用共享文件中的元組。
無法生成包含工作流的 SharePoint Visual Basic 項目
-
問題:
具有工作流的 SharePoint Visual Basic 項目可能無法生成,並收到以下錯誤:“ExpressionTranslationBuildTask”任務意外失敗。
-
解決方法:
目前沒有解決方法。
無法將服務功能(以前稱為“連接的服務”)添加到 VB 項目中
-
問題:
處理 VB 項目時,無任何可將服務功能(在 C# 中的類似項目類型中可能會發現的那種服務功能)配置到項目中的可用命令。 這是由 RC 中的一個 Bug 所致,將在下一個版本或預發布版本中修復此問題。
-
解決方法:
應可使用以下解決方法之一:
- 使用 Visual Studio 2015 和“添加連接的服務...”命令。
- 將相似類型的 C# 項目創建到 VB 項目。 將解決方案添加到(本地)git 源代碼管理。 配置服務功能。 使用團隊資源管理器查看對存儲庫所做的更改,並將等效更改應用於 VB 項目。
無法使用 RUS 語言包安裝添加服務功能(以前稱為“連接的服務”)
-
問題:
當嘗試使用 Visual Studio 2017 RC 中處於活動狀態的俄語語言包在項目中配置服務功能時,最后一個按鈕將無法配置服務。
-
解決方法:
- 從 Visual Studio 安裝程序安裝另一個 SKU(例如 Community),並選擇另一種語言(例如英語)。
- 使用備用的 Visual Studio 2017 RC SKU 打開該項目並配置服務功能。
- 切換回 RUS Visual Studio 以繼續工作。
在某些情況下可能無法刷新用於 Git 的 CodeLens 團隊指示器
-
問題:
當在 Visual Studio 中加載來自 Git 存儲庫的文件時,可能不會自動刷新 CodeLens 團隊指示器。 在這種情況下,還會顯示一個錯誤對話框,其中顯示消息“遇到異常。 可能是由擴展引起的。”
-
解決方法:
通過選擇任何指示器上的上下文菜單刷新 CodeLens 團隊指示器。