| 屬性 | 值 |
|---|---|
| 規則識別碼 | CA2226 |
| 職稱 | 運算子應該具有對稱的多載運算 |
| 類別 | 使用方式 |
| 修正是造成中斷還是不中斷 | 不中斷 |
| 在 .NET 10 中預設啟用 | 否 |
| 適用語言 | C# 與 Visual Basic |
原因
類型實作等號比較運算子或不等比較運算子,但未實作相反的運算子。
根據預設,此規則只會查看外部可見的類型,但這是可設定的。
規則描述
在任何情況下,不論是相等還是不等,都不適用於此類型的實例,而且相反運算子未定義。 型別通常透過回傳等號運算子的否定結果來實作不等運算子。
C# 編譯程式會針對違反此規則發出錯誤。
如何修正違規
若要修正此規則的違規,請同時實現相等和不等比較運算符,或移除現有的該運算符。
隱藏警告的時機
請勿隱藏此規則的警告。 如果您這樣做,您的類型將無法以與 .NET 一致的方式運作。
設定程式代碼以分析
使用下列選項來設定程式代碼基底要執行此規則的部分。
您可以只針對此規則、此選項所適用的所有規則,或套用至此類別(使用)的所有規則設定此選項。 如需詳細資訊,請參閱 程式代碼品質規則組態選項。
包含特定 API 介面
您可以藉由設定 [api_surface] 選項,根據程式代碼基底的存取範圍,設定執行此規則的哪些部分。 例如,若要指定規則只應該針對非公用 API 介面執行,請將下列機碼/值組新增至 專案中的 .editorconfig 檔案:
dotnet_code_quality.CAXXXX.api_surface = private, internal
注意
以適用規則的標識碼取代 XXXX 的 CAXXXX 部分。