Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
CA2265: Nerovnávejte
| Vlastnost | Hodnota |
|---|---|
| ID pravidla | CA2264 |
| Název | Neprovnávejte Span<T> s null nebo default. |
| Kategorie | Využití |
| Oprava, která může být destruktivní nebo nedestruktivní | Nezlomitelný |
| Povoleno ve výchozím nastavení v .NET 10 | Jako upozornění |
| Příslušné jazyky | C# a Visual Basic |
Příčina
Instance Span<T> je porovnána s null nebo default.
Popis pravidla
Porovnání části s null nebo default nemusí mít ten zamýšlený účinek, jaký jste očekávali.
default a null literál je implicitně převeden na Span<T>.Empty.
Jak opravit porušení
Odeberte redundantní porovnání nebo vytvořte kód explicitnější voláním IsEmpty .
Příklad
Následující fragment kódu ukazuje dvě porušení CA2265 a opravu porušení.
Span<int> span = new([1, 2, 3]);
// CA2265 violation.
if (span == null) { }
// CA2265 violation.
if (span == default) { }
// Fixes the violation.
if (span.IsEmpty) { }
Kdy potlačit upozornění
Pokud chcete porovnat rozsah s prázdným rozsahem, je bezpečné toto upozornění potlačit.
Potlačení upozornění
Pokud chcete pouze potlačit jedno porušení, přidejte do zdrojového souboru direktivy preprocesoru, abyste pravidlo zakázali a znovu povolili.
#pragma warning disable CA2265
// The code that's violating the rule is on this line.
#pragma warning restore CA2265
Pokud chcete pravidlo pro soubor, složku nebo projekt zakázat, nastavte jeho závažnost v none konfiguračním souboru.
[*.{cs,vb}]
dotnet_diagnostic.CA2265.severity = none
Další informace naleznete v tématu Jak potlačit upozornění analýzy kódu.