dotnet format
此文章適用於:✔️ .NET 6.x SDK 與更新版本
名稱
dotnet format
:設定程式碼的格式以符合 editorconfig
設定。
概要
dotnet format [<PROJECT | SOLUTION>] [command] [options]
dotnet format -h|--help
描述
dotnet format
是程式代碼格式器,可將樣式喜好設定和靜態分析建議套用至專案或方案。 若有偏好設定,系統會從 .editorconfig 檔案中讀取;若沒有偏好設定,則會使用預設偏好設定。 如需詳細資訊,請參閱 EditorConfig 文件。
引數
PROJECT | SOLUTION
在 MSBuild 專案或解決方案上執行程式碼格式設定。 MSBuild 會在目前工作目錄中搜尋副檔名以 proj 或 sln 結尾的檔案,並使用該檔案。
選項。
下列各選項無須使用 dotnet format
命令也能順利運作,但您可以使用此命令進一步自訂要設定格式的內容和格式設定規則。
--diagnostics <DIAGNOSTICS>
修正程式碼樣式或協力廠商問題時,用來做為篩選條件的診斷識別碼清單 (以空格分隔)。 .editorconfig 檔案中列出的所有識別碼皆為預設值。 如需使用可指定內建分析器規則識別碼的清單,請參閱程式碼分析樣式規則識別碼清單。
--severity
需要修正的診斷最低嚴重性。 允許的值為
info
、warn
和error
。 預設值是warn
。--no-restore
設定格式前不會執行隱含還原。 預設為執行隱含還原。
--verify-no-changes
確認不會執行任何格式變更。 如果任何檔案已設定格式,會以非零結束代碼終止。
--include <INCLUDE>
要包含在格式設定中的相對檔案或資料夾路徑清單 (以空格分隔的格式)。 預設為解決方案或專案中的所有檔案。
--exclude <EXCLUDE>
要從格式設定中排除的相對檔案或資料夾路徑清單 (以空格分隔的格式)。 預設值為 none。
--include-generated
為 SDK 所產生的檔案設定格式。
-v|--verbosity <LEVEL>
設定詳細程度等級。 允許的值為
q[uiet]
、m[inimal]
、n[ormal]
、d[etailed]
和diag[nostic]
。 預設值為m[inimal]
。--binarylog <BINARY-LOG-PATH>
將所有專案或解決方案載入資訊記錄到二進位記錄檔。
--report <REPORT-PATH>
在
<REPORT_PATH>
指定的目錄中產生 JSON 報告。-h|--help
顯示說明和使用方式資訊
子命令
空格
dotnet format whitespace
- 將程式碼的格式調整為符合空白字元的 editorconfig
設定。
描述
子 dotnet format whitespace
命令只會執行與空格符格式相關聯的格式設定規則。 如需可在 .editorconfig 檔案中指定的格式設定選項完整清單,請參閱 C# 格式設定選項。
選項。
--folder
將
<PROJECT | SOLUTION>
引數視為程式碼檔案簡單資料夾的路徑。
樣式
dotnet format style
- 為程式碼設定格式,以符合程式碼樣式的 EditorConfig 設定。
描述
子 dotnet format style
命令只會執行與程式代碼樣式格式設定相關聯的格式化規則。 如需可在 editorconfig
檔案中指定的格式設定選項完整清單,請參閱程式碼樣式規則。
選項。
--diagnostics <DIAGNOSTICS>
修正程式代碼樣式問題時,用來做為篩選條件的空間分隔診斷標識符清單。 .editorconfig 檔案中列出的所有識別碼皆為預設值。 如需您可以指定之內建程式代碼樣式分析器規則識別碼的清單,請參閱 程式碼分析樣式規則的標識碼清單。
--severity
需要修正的診斷最低嚴重性。 允許的值為
info
、warn
和error
。 預設值是warn
分析器
dotnet format analyzers
- 將程式代碼格式化為符合 editorconfig
分析器的設定(不包括程式代碼樣式規則)。
描述
子 dotnet format analyzers
命令只會執行與分析器相關聯的格式化規則。 如需您可以在檔案中指定的 editorconfig
分析器規則清單,請參閱 質量規則。
選項。
--diagnostics <DIAGNOSTICS>
修正非程式代碼樣式問題時,要當做篩選使用的診斷標識碼以空格分隔的清單。 .editorconfig 檔案中列出的所有識別碼皆為預設值。 如需您可以指定之內建分析器規則標識碼的清單,請參閱 品質規則的標識符清單。 如需第三方分析器,請參閱其檔。
--severity
需要修正的診斷最低嚴重性。 允許的值為
info
、warn
和error
。 預設值是warn
。
範例
為解決方案中所有程式碼設定格式:
dotnet format ./solution.sln
清除應用程式專案中所有程式碼:
dotnet format ./src/application.csproj
確認所有程式碼的格式皆設定無誤:
dotnet format --verify-no-changes
清除 src 與 tests 目錄中所有程式碼,但不清除 src/submodule-a 中的程式碼:
dotnet format --include ./src/ ./tests/ --exclude ./src/submodule-a/
修正特定的 程式代碼樣式 問題:
dotnet format style --diagnostics IDE0005 --severity info
修正所有嚴重性
info
為warning
或error
的程式代碼樣式問題:dotnet format style --severity info
修正特定(非程式代碼樣式)分析器問題:
dotnet format analyzers --diagnostics CA1831 --severity warn
修正所有嚴重性
info
warning
為 或error
的非程式代碼樣式問題:dotnet format analyzers --severity info