Megosztás a következőn keresztül:


CA2264: Ne adjon át nem null értékű értéket az "ArgumentNullException.ThrowIfNull" értéknek

Tulajdonság Érték
Szabályazonosító CA2264
Cím Ne adjon meg nem null értékű értéket az "ArgumentNullException.ThrowIfNull" értéknek
Kategória Használat
A javítás kompatibilitástörő vagy nem törik Nem törés
Alapértelmezés szerint engedélyezve a .NET 9-ben Figyelmeztetésként

Ok

Ha egy ismerten soha nem null értékű értéket ad át ArgumentNullException.ThrowIfNull()a rendszer, a rendszer soha nem ad kivételt, így az utasítás nem lesz megadva.

Szabály leírása

ArgumentNullException.ThrowIfNulldob, ha az átadott argumentum értéke .null Bizonyos szerkezetek, például a nem null értékű szerkezetek (kivéve Nullable<T>), a "nameof()" kifejezéseket és az "új" kifejezéseket, ismert, hogy soha nem null értékűek, ezért ArgumentNullException.ThrowIfNull soha nem dobnak.

A szerkezet esetében, mivel ArgumentNullException.ThrowIfNull elfogadja object?a strukturált szerkezetet, a struktúra be van jelölve, ami további teljesítménybüntetést okoz.

Szabálysértések kijavítása

Távolítsa el a ArgumentNullException.ThrowIfNull hívást.

Példa

A következő kódrészlet a CA2264 megsértését mutatja be:

static void Print(int value)
{
    ArgumentNullException.ThrowIfNull(value);
    Console.WriteLine(value);
}

A következő kódrészlet kijavítja a szabálysértést:

static void Print(int value)
{
    Console.WriteLine(value.Value);
}

Mikor kell letiltani a figyelmeztetéseket?

Ezt a figyelmeztetést mindig nyugodtan el lehet tiltani.

Figyelmeztetés mellőzése

Ha csak egyetlen szabálysértést szeretne letiltani, adjon hozzá előfeldolgozási irányelveket a forrásfájlhoz a szabály letiltásához és újbóli engedélyezéséhez.

#pragma warning disable CA2264
// The code that's violating the rule is on this line.
#pragma warning restore CA2264

Ha le szeretné tiltani egy fájl, mappa vagy projekt szabályát, állítsa annak súlyosságát none a konfigurációs fájlban.

[*.{cs,vb}]
dotnet_diagnostic.CA2264.severity = none

További információ: Kódelemzési figyelmeztetések letiltása.