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