Visual Studio 2022 17.1 版版本資訊

文章推薦指數: 80 %
投票人數:10人

取得Visual Studio 2022 17.1 版的最新功能、錯誤修正和支援。

立即下載。

跳到主要內容 已不再支援此瀏覽器。

請升級至MicrosoftEdge,以利用最新功能、安全性更新和技術支援。

下載MicrosoftEdge 其他資訊 目錄 結束焦點模式 閱讀英文 儲存 目錄 閱讀英文 儲存 Twitter LinkedIn Facebook 電子郵件 WeChat 目錄 VisualStudio202217.1版版本資訊 發行項 04/20/2022 此頁面有所助益嗎? Yes No 還有其他意見反應嗎? 系統會將意見反應傳送給Microsoft:按下[提交]按鈕,您的意見反應將用來改善Microsoft產品和服務。

隱私權原則。

送出 謝謝。

本文內容 提示 觀看VisualStudio2022啟動活動的錄製,以瞭解新功能、聆聽秘訣&,以及下載免費的數位Swag。

|開發人員社群VisualStudio2022藍圖 |系統需求 |相容性 |散發程式碼 |授權條款 |BlogsLatest |發行已知問題 |VisualStudioDocs的新功能 按一下按鈕以下載最新版本的VisualStudio2022。

如需安裝及更新VisualStudio2022的指示,請參閱將VisualStudio2022更新為最新版本。

此外,請參閱如何離線安裝上的指示。

請流覽visualstudio.microsoft.com/downloads頁面以下載其他VisualStudio2022產品。

VisualStudio202217.1版 VisualStudio202217.1版版本 2022年4月12日-VisualStudio202217.1.4版 2022年3月31日-VisualStudio202217.1.3版 2022年3月22日-VisualStudio202217.1.2版 2022年3月8日-VisualStudio202217.1.1版 2022年2月15日-VisualStudio202217.1.0版 VisualStudio2022部落格 VisualStudio2022部落格是VisualStudio工程小組的產品見解官方來源。

您可以在下列文章中找到VisualStudio2022版的深入資訊: VisualStudio202217.1版現已推出! VisualStudio2022封存版本資訊 VisualStudio202217.0版版本資訊 VisualStudio202217.1.4版 發行于2022年4月12日 此版本17.1.4中已解決的問題 修正了在範本中呼叫'new'時,無法透過引數相依查閱找到正確的'operatornew'函式的問題。

修正WindowsForms.NETFramework設計工具的設計階段類型解析問題,否則會導致設計工具載入失敗。

修正「HotRestart.Tasks.DetectSigningIdentity」工作意外失敗。

已新增安裝程式命令列,以移除未使用的通道。

已知問題 不支援同步處理Apple開發人員帳戶憑證和布建設定檔,但用於In-House部署的帳戶除外。

若要解決此問題,請直接從Apple開發人員帳戶網站下載憑證和布建設定檔。

開發人員社群的問題 資訊安全諮詢注意事項 CVE-2021-43877ASP.NETCore和VisualStudio提高許可權弱點:許可權提升弱點存在於ASP.NETCORE模組(ANCM),在IIS內裝載.NETCore、.NET5和.NET6應用程式時,可能會提高許可權。

CVE-2022-24765權限提高弱點Git中可能有許可權提升弱點,適用于Windows,其中Git作業可能會在Git目錄的Seraching時在存放庫外部執行。

gitforWindows現在已更新為2.35.2.1版。

CVE-2022-24767DLL攔截弱點在SYSTEM使用者帳戶下執行卸載程式時,Git中存在Windows安裝程式的潛在DLL攔截弱點。

gitforWindows現在已更新為2.35.2.1版。

CVE-2022-24513權限提高弱點當MicrosoftVisualStudio更新程式服務不正確地剖析本機設定資料時,可能會有許可權提升弱點。

VisualStudio202217.1.3版 發行于2022年3月31日 此版本17.1.3中已解決的問題 引進AppleXcode13.3的支援。

修正iOSIPA產生器錯誤,(錯誤ITMS-90207)使用Xcode13.3。

修正無法與Apple開發人員入口網站同步處理帳戶 修正VisualStudio在一小時內使用TFVC長時間(停止回應/凍結的問題)。

修正從VisualStudioSQLServerDataTools連線到AzureSQL受控執行個體時,「偵測到不相容SQLServer版本」錯誤訊息。

已知問題 使用VisualStudion2022和AppleXcode13.3部署iOS應用程式會導致具有空白/黑色畫面的遠端iOS模擬器視窗。

因應措施:停用[工具-選項]功能表下iOS設定的[遠端模擬器Windows]核取方塊。

iOS應用程式應該在macOS主機上正確部署。

開發人員社群的問題 開發人員社群有17.1中提供的完整修正清單。

開啟解決方案時,必須持續VisualStudio工作終止 VisualStudio202217.1.2版 發行于2022年3月22日 此版本17.1.2中已解決的問題 已修正會導致測試執行的某些動畫在背景中執行的問題,即使相關聯的測試執行完成也一樣。

這會導致高重新整理速率監視器特別明顯的速度變慢。

修正程式應該改善在高重新整理速率監視器上使用VS的體驗。

停用在開啟VisualStudio時自動開啟[堆疊追蹤總管]視窗。

這仍然可以在選項中啟用。

修正了拖曳停駐檔索引標籤只能與停駐裝飾項搭配使用,而非其他檔索引標籤的回歸。

已修正偶發連結器停止回應的問題。

開發人員社群的問題 開發人員社群有17.1中提供的完整修正清單。

WindowsForms5個設計工具預覽無法存取螢幕助讀程式 我無法取消最小化VisualStudio TFS錯誤:TF30063您未獲授權 無法再將檔索引標籤拖放到檔索引標籤的特定位置 VisualStudio202217.1.1版 發行于2022年3月8日 此版本17.1.1中已解決的問題 開發人員社群的問題 開發人員社群有17.1中提供的完整修正清單。

在自訂命令中使用CONFIG時,17.1.0中的CMake-vcxproj>回歸 VSSDK:VS17.1.0Preview5.0會在IVsObjectManager.UnregisterLibMgr()之後停止回應 資訊安全諮詢注意事項 CVE-2020-8927弱點遠端程式碼執行弱點存在於.NET5.0和.NETCore3.1中,其中緩衝區溢位存在於1.0.8之前的Brotli程式庫版本中。

CVE-2022-24464弱點剖析特定HTTP表單要求類型時,.NET6.0、.NET5.0和.NETCORE3.1中存在拒絕服務弱點。

CVE-2022-24512弱點.NET6.0、.NET5.0和.NETCore3.1中有遠端程式碼執行弱點,其中堆疊緩衝區溢位發生在.NETDoubleParse常式中。

CVE-2021-3711OpenSSL緩衝區溢位弱點OpenSSL中有潛在的緩衝區溢位弱點,Git會針對Windows取用此弱點。

gitforWindows現在已更新為2.35.1.2版,可解決此問題。

VisualStudio202217.1.0版 發行于2022年2月15日 此版本VisualStudio202217.1.0版的新功能摘要 C++ 已新增設定預設範本,以使用CMakePresets.json在遠端macOS系統上設定和建置CMake專案。

您也可以在遠端macOS系統上啟動CMake目標,並使用GDB或LLDB支援的VisualStudio偵錯工具前端進行偵錯。

您現在可以使用LLDB或GDB對遠端macOS系統上的VisualStudio核心傾印進行偵錯。

VisualStudio隨附的Clang和LLVM版本已升級為v13。

VisualStudio的CMake整合只會在開啟工作區的根目錄識別CMakeLists.txt時啟動。

如果在工作區的另一個層級識別CMakeLists.txt,系統會提示您啟用VisualStudio的CMake與通知的整合。

已針對內嵌目標新增註冊視覺化視窗,可透過>偵錯Windows>內嵌暫存器取得。

已新增RTOS專案的新執行緒檢視,可透過>偵錯Windows>RTOS物件取得。

偵&錯診斷 已新增名為StickyDataTips的新功能,也就是,您現在可以將資料提示保持展開,直到您按一下為止。

這提供一個非常簡單的方式,讓您的物件在資料提示後重新評估。

若要啟用此功能,請在[工具>選項>>偵錯一般]底下,核取[保持展開的資料提示保持開啟狀態]核取方塊。

已新增MicrosoftAzureAppServices附加至進程的支援。

建置Managed程式庫時,開發人員可以選擇使用建置所產生的偵錯資訊(PDB檔案)內嵌其來源檔案,甚至將PDB檔案內嵌至元件本身。

如果參考的元件具有內嵌來源且PDB可供使用,我們現在會將內嵌來源呈現為GotoDefinition的一部分。

這可讓您流覽至宣告目標符號的原始原始程式檔。

將游標放在符號上,然後按F12流覽至原始原始程式檔。

現在可在可等候的運算式內完成awaitIntelliSense。

開始輸入可等候的運算式,並注意現在如何在await完成清單中顯示。

現在有一個重構,將靜態成員移至新的類型。

將游標放在靜態成員上。

按ctrl+.)(以觸發[快速動作和重構]功能表。

選取[將靜態成員移至其他類型...]。

這會開啟對話方塊,您可以在其中選取您想要移動的成員。

現在有重構可簡化程式碼以使用新的C#10.0擴充屬性模式。

使用擴充屬性模式可減少雜訊,讓您參考巢狀成員,而不是巢狀另一個遞迴模式。

將游標放在巢狀成員參考上。

按ctrl+.)(以觸發[快速動作和重構]功能表。

選取[簡化屬性模式]。

現在有一個重構可偵測變數交換,並建議使用Tuple來交換值,而不是使用暫存變數來交換您可以使用Tuple的引數。

將游標放在您要交換值的暫存變數指派上。

按ctrl+.)(以觸發[快速動作和重構]功能表。

選取[使用元組交換值]。

程式碼定義視窗現在支援C#和VisualBasic。

若要使用程式碼定義視窗,請按ctrl+W、D()或選取[檢視>程式碼定義視窗]。

接下來,將游標放在識別碼上,以巡覽和探索程式碼。

現在有一個重構,可跨專案啟用可為Null的參考型別。

您可以將enable元素新增至專案檔,或將#nullableenablepragma新增至專案中的每個原始程式檔,以啟用可為Null的參考型別。

為了協助簡化此程式,我們現在會自動包含新.NET專案的啟用

對於現有的.NET專案,您可以將游標放在啟用pragma#nullable,以啟用可為Null的參考型別。

按ctrl+.)(以觸發[快速動作和重構]功能表。

選取[啟用專案中可為Null的參考類型]。

簽章說明已在簽章中出現多次時改善其顯示。

簡化的檢視包含結構化類型索引鍵,以顯示Tuple中包含的內容。

您現在可以一目了然地瞭解錯誤和警告,而不需要將游標停留在內嵌診斷的程式程式碼上。

預設會停用內嵌診斷,因此您必須在[工具>選項>文字編輯器>]C#或[基本>進階]中啟用它,然後選取[顯示內嵌診斷](實驗性)。

編輯器 程式碼清除功能現在可以設定為在明確儲存檔案時執行。

在[文字編輯器>程式碼清除]下的[工具>選項]中,新的選項可讓使用者在明確儲存時啟用[程式碼清除],以及選取要執行的設定檔。

請注意,此選項不會在自動儲存時執行程式碼清除。

Git工具 新增了比較VisualStudio分支的功能。

引進中斷連結前端狀態的增強功能,包括簽出認可的能力。

多重存放庫分支增強功能,包括能夠同時跨不同存放庫建立分支,(預覽功能)。

已新增在VisualStudio中建立新Git存放庫時包含讀我檔案的功能。

增強使用暫留按鈕釘選常用分支的能力。

建置更容易探索的UI,以將工作專案與新的認可相關聯。

IDE 新增功能,可依副檔名或Project將色彩配置切換為索引標籤的色彩。

已新增功能,以在啟用色彩索引標籤時自訂索引標籤色彩。

以滑鼠右鍵按一下色彩索引標籤,然後選取[設定索引標籤色彩]。

安裝和更新 我們已減少安裝之後所需的重新開機次數。

必要的重新開機通常是因為在使用中的系統目錄中更新VisualC++執行時間檔案所造成。

這些檔案通常會正確更新;只需要重新開機才能清除已取代的檔案。

在這些情況下,VSInstaller現在會顯示建議的重新開機對話方塊。

顯示建議的重新開機對話方塊時,客戶可能會立即啟動VisualStudioIDE(,而不需重新開機)。

已將LTSC通道到期日的相關資訊新增至[更新設定]對話方塊。

新增了以程式設計方式變更更新來源位置的功能,與實際執行更新無關。

這可讓IT系統管理員以程式設計方式變更更新通道。

MicrosoftAzureAppServices附加至進程 您現在可以附加至.NET(Framework。

在未開啟方案或專案的情況下,WindowsAppService的核心或5+)。

開啟[附加至進程]對話方塊>,將[連線類型]變更為[MicrosoftAzureAppServices>選取[尋找>您的訂用帳戶],然後在資源群組下尋找您的AppService,然後選擇[確定]。

尋找您要連線的程式,然後選取[附加]。

MicrosoftTeams開發人員工具 Teams工具組是一個VisualStudio延伸模組,可協助開發人員建立MicrosoftTeams體驗,而且是MicrosoftTeamsFramework(TeamsFx)的一部分。

在GitHub和MicrosoftTeams檔中深入瞭解TeamsToolkit和TeamsFx。

您現在可以在VisualStudio安裝程式的ASP.NETWeb開發工作負載中選擇MicrosoftTeams開發工具元件。

安裝此元件會新增TeamsToolkit擴充功能。

使用新的MicrosoftTeamsApp專案範本,開始建立新的Teams索引標籤應用程式。

.NET生產力 如果參考的元件具有內嵌來源或來源連結,我們現在會將內嵌來源和來源連結呈現為[移至定義]的一部分。

這可讓您流覽至宣告目標符號的原始原始程式檔。

將游標放在符號上,然後按F12流覽至原始原始程式檔。

現在有一個[堆疊追蹤總管]視窗顯示剪貼簿中的堆疊追蹤,可讓您按一下並直接流覽至相關的程式碼。

根據預設,如果您從解決方案複製堆疊追蹤,然後將焦點切換至[堆疊追蹤總管]視窗,則會自動顯示堆疊追蹤。

若要開啟[堆疊追蹤總管]視窗,請移至[檢視>其他Windows並選取[堆疊追蹤總管]。

在VisualStudio2019中,我們引進了EditorConfig的新UI。

EditorConfig檔案有助於藉由定義程式碼樣式和格式,保持您的程式碼一致。

這些檔案可以與其存放庫中的程式碼搭配使用,並使用相同的原始檔控制。

如此一來,您小組中複製該存放庫的每個人的樣式指引都相同。

在此版本中,我們已將命名樣式新增至EditorConfigUI。

若要將EditorConfig檔案新增至專案或方案,請以滑鼠右鍵按一下方案總管內的專案或方案名稱。

選取[新增專案]。

在[新增專案]對話方塊中搜尋EditorConfig。

選取.NETEditorConfig範本,以新增預先填入預設選項的EditorConfig檔案。

請注意新的EditorConfigUI和新的命名樣式選項。

其他改善 從PDB中的來源資訊移至定義。

在可等候的運算式內完成awaitIntelliSense。

將靜態成員移至新的類型重構。

簡化程式碼以使用新的C#10.0擴充屬性模式重構。

偵測變數交換,並建議使用元組來交換值重構。

C#和VisualBasic的程式碼定義視窗支援。

跨專案重構啟用可為Null的參考型別。

簽章有助於簡化Tuple在簽章內出現多次時的檢視改善。

瞭解內嵌診斷一目了然的錯誤和警告。

謝謝 最後,當然還不至少感謝下列在.NETProductivity(參與此月的人員,也就是Roslyn): YoussefFoundation(@Youssef1313): 嘗試將EqualityContract屬性存取子標示為未自動實作PR#57917 SettingsUpdateHelperPR#55123中的次要重構 修正從UIPR產生editorconfig選項時的間距#54601 PetrOnderka(@svick): 不建議簡化位置模式PR#57676 SaleshLinuxPanna(@panna-linux) 當地語系化遺漏警告訊息PR#57502 PavelKrymets(@) 請勿將程式碼批註中前置空白字元正規化#57414 KevRitchie(@KevRitchie) 更新檔以說明FullyQualifiedFormat行為PR#57397 MarcioABraga(@MarcioAB) 更新TextSpan.csPR#57300 (@bernd5) 修正「函式指標調用有「無」IOperation」PR#57191 MartinStrecker(@MaStr11): CS1591的程式碼檔:新增inheritdocPR#57004 PaulMCohen(@paul1956): VB在_'批註之後發生錯誤之LineContinuation格式設定問題的初始修正程式#54559 .NET熱重新載入 針對建置Blazor應用程式的開發人員,對.NET熱重新載入進行多項改善,包括下列問題的解決方式: 建置WebAssembly的Blazor開發人員(Wasm)應用程式有時會在實際套用變更時看到粗略的編輯對話方塊,或看到Rude編輯對話方塊出現多次。

Blazor開發人員建置WebAssembly(Wasm)應用程式如果使用rude編輯對話方塊的重建功能,然後嘗試變更Razor檔案,則會進入永久的粗略編輯狀態。

Blazor開發人員有時會在透過F5(F5)執行應用程式時,看到其VisualStudio熱重新載入會話終止。

Blazor開發人員會看到VisualStudio偵錯工具中斷,並出現「無法停止偵錯...」如果訊息嘗試編輯error.cshtml檔案,並使用.NET熱重新載入將變更套用至該檔案。

在未來的VisualStudio版本中,將會進行更多錯誤修正,因為我們致力於改善此功能的功能和穩定性。

如果您遇到任何問題,請使用VisualStudio的[回報問題]功能來回報。

效能 關閉解決方案時,藉由優化清除作業來加快解決方案的關閉效能。

VisualStudio現在會將程式碼基底中的檔案編制索引,以提供更快速的[在檔案中尋找]搜尋體驗。

停用[工具>選項>][環境>預覽功能]中的索引搜尋,並切換[啟用索引編制]以加快尋找體驗。

Razor(ASP.NETCore)編輯器 如果快速動作需要,Razor現在會新增遺漏using指示詞。

解決方案篩選 已新增選項,以載入或重載方案篩選中專案的整個相依性樹狀結構。

當新專案新增至相依性樹狀結構,但尚未手動新增至方案篩選時,您可以輕鬆地一次新增所有相依性。

此選項([更新Project相依性])位於方案節點的操作功能表中,(以滑鼠右鍵按一下方案總管中的方案)。

測試控管 測試作業正在進行時,測試動畫現在會出現在VisualStudio殼層底部。

它類似于建置動畫,並讓您知道VisualStudio正在運作,並提供程式尚未損毀的指標。

程式碼涵蓋範圍工具現在可以產生cobertura程式碼涵蓋範圍格式。

您可以在Runsettings檔案的DataCollector組態區段中新增Cobertura,以在runsettings中啟用此功能。

此格式可以在程式碼涵蓋範圍結果視窗中檢視VisualStudioEnterprise。

您也可以在runsettings檔案中指定cobertura格式,或在參數中指定它,以從cli收集該格式。

針對dotnetcli,請使用dotnettest--collect:"CodeCoverage;Format=Cobertura"。

針對vstest,請使用vstest.console.exe/collect:"CodeCoverage;Format=Cobertura"。

collect參數會覆寫runsettings中指定的格式。

Web工具 布建和選取Azure資源時,VisualStudio記住您先前針對欄位「資源群組」和「位置」所做的選擇,而不是一律預設為清單中的第一個專案。

即使先前的選取專案無法使用,VisualStudio現在仍會計算最接近的地理位置,並預設會挑選該位置。

發佈設定檔現在一律會依字母順序列在位於[發佈摘要]頁面頂端的下拉式清單中,以及名為[WebOneClickPublish]的VisualStudio工具列中的下拉式清單。

AzureContainerApps的工具支援仍會保留在VisualStudio預覽通道中。

若要繼續使用AzureContainer應用程式,請安裝17.2Preview1版本。

XAML熱重載 當搭配.NET熱重新載入使用時,XAML熱重新載入現在支援更多端對端案例。

我們已啟用下列案例:針對WPF和WinUI3應用程式: XAML程式碼編輯器現在會在IntelliSense中正確顯示.NET熱重新載入作業所建立的控制項類型和屬性。

使用.NET熱重新載入系結至新建立的屬性現在會如預期般運作。

針對WinUI,您現在也可以使用x:Bind系結至新的屬性。

針對WPF應用程式: 為使用.NET建立的事件處理常式新增新建立的方法,熱重新載入現在會正常運作。

注意:雖然上述案例的運作方式是使用.NET熱重新載入,然後使用XAML熱重新載入,但有已知的限制。

例如,如果您使用XAML將新的屬性新增至尚未建立的屬性熱重新載入,而且只會使用.NET熱重新載入建立它,則XAML變更不會看到新的屬性。

我們瞭解此問題,並希望未來加以改善。

XAMLLivePreview 我們已改善尺規、縮放和元素選取行為。

XAMLLivePreview現在支援.NETMAUI應用程式(WinUI&Android),但仍然受限於.NETMAUI可供使用的位置。

在此版本中,我們已對XAMLLivePreview進行數項改善,變更包括: .NETMAUI支援(WinUI&AndroidEmulator):現在支援以WinUI3應用程式身分執行的.NETMAUI應用程式或在AndroidEmulator中執行。

(注意:每個版本的VisualStudio尚不支援.NETMAUI,因此從17.1開始的內建功能僅適用于.NETMAUI可用的版本) 尺規變更:尺規現在會根據您的應用程式組態,正確顯示圖元指標從右至左或由左至右。

專案選取範圍變更:使用XAMLLivePreview中的「選取元素」功能現在一律會流覽至來源。

先前這是可設定的選項,但它已在此版本中移除,並標準化行為以避免混淆。

縮放改善:縮放下拉式清單現在支援自動「全部調整」、「調整寬度」或「調整高度」,讓這些案例更容易縮放。

您也可以搭配這項新功能使用一般百分比縮放或滾動輪。

17.1中解決的問題 修正了DataSet自訂偵錯工具視覺化檢視不適用於遠端和AzureApp服務偵錯案例的問題。

新增了取消暫止「熱重新載入」作業的支援。

已修正Xamarin熱重新開機的累加式部署問題。

已修正並啟用TFS的程式碼鏡頭支援。

已修正會導致Razor和LiveShare案例中程式碼色彩錯誤的錯誤。

在macOS系統上以CMake專案為目標時,VisualStudio的C++Intellisense已改善。

VisualStudio現在會在搜尋C++標頭時處理CMake的CMAKE_OSX_SYSROOT變數。

修正了結合/openmp:llvm和/ZI時使用omp工作的數個問題,會導致編譯器當機或以無訊息方式產生不正確的程式碼。

修正停用快速部署時偵錯Android應用程式時的問題。

修正使用/experimental:deterministic、/pathmap和/clr時造成C2567的問題。

修正來自/RTC旗標的ARM64XThunks損毀問題。

在連結時,請勿裝飾已經裝飾的ARM64EC符號。

我們已修正AzureContainerApps工作流程產生的問題,如果已有相同名稱的服務主體,服務主體產生就會失敗。

已將=>和==運算子新增1的WSL上進行編譯時發生錯誤 在邏輯「||」時使用位「|」可能是預期 VisualStudio201916.10.X版本中的「尋找所有參考」功能 已修正包含x86COM參考與ClickOnce的問題 VisualStudiof升級中斷套件編譯 使用C++進行Linux開發-內部動態連結錯誤 沒有Doxygen標記的批註未正確剖析 命名空間內本機宣告的連結錯誤 launch.vs.json的預先定義宏 方案總管不會顯示PowerShell檔案圖示 C26440誤判函式可以宣告為'noexcept' C++:std::is_empty範本特製化不正確 適用于Linux的VC++:複製來源之前執行的遠端建置前事件 使用.Net6+VSCommunity2022的BlazorServer和Css隔離 請參閱此版本中開發人員社群修正的完整清單。

已知問題 遵循下列連結,查看VisualStudio2022中所有已開啟的問題和可用的因應措施。

已知問題 意見反應與建議 我們很希望聽聽您的意見!您可以使用安裝程式或VisualStudioIDE右上角的[傳送意見反應]圖示,或從[說明>傳送意見反應]來回報問題或建議功能。

您可以使用VisualStudio開發人員社群來追蹤您的問題,您可以在其中新增批註或尋找解決方案。

您也可以透過我們的即時聊天支援取得免費的安裝協助。

部落格 善用「開發人員工具部落格」網站中的見解與建議,讓您能夠隨時取得所有新版本的最新資訊,以及涵蓋各類功能的深入探討文章。

開發人員工具部落格 頁首 本文內容



請為這篇文章評分?