CA1856: A ConstantExpected attribútum helytelen használata
Tulajdonság | Érték |
---|---|
Szabályazonosító | CA1856 |
Cím | A ConstantExpected attribútum helytelen használata |
Kategória | Teljesítmény |
A javítás kompatibilitástörő vagy nem törik | Nem törés |
Alapértelmezés szerint engedélyezve a .NET 8-ban | Hibaként |
Ok
Az ConstantExpectedAttribute attribútum nincs megfelelően alkalmazva egy paraméterre.
Szabály leírása
Ez a szabály az ConstantExpectedAttribute attribútum helytelen használatát jelöli, például:
- Az Min vagy Max az érték nem kompatibilis a paraméter típusával.
- Az attribútum paramétertípusa nem támogatott ConstantExpectedAttribute .
- A Min rendszer megfordítja az Max értékeket.
- Az Min vagy Max az érték nem fér el a paraméter értékkorlátjai között.
Szabálysértések kijavítása
Javítsa ki a kódot a kapott hibaüzenetnek megfelelően.
Példa
A következő kódrészlet a CA1856 megsértését mutatja be:
using System.Diagnostics.CodeAnalysis;
// Violation - value not compatible with parameter type.
static void M1([ConstantExpected(Min = "a")] char val) { }
// Violation - unsupported type for attribute.
static void M2([ConstantExpected] decimal val) { }
// Violation - Min and Max values are inverted.
static void M3([ConstantExpected(Max = 0, Min = 1)] int val) { }
// Violation - value does not fit within the parameter value bounds.
static void M4([ConstantExpected(Min = long.MinValue)] int val) { }
A következő kódrészlet kijavítja a szabálysértéseket:
using System.Diagnostics.CodeAnalysis;
static void M1([ConstantExpected(Min = 'a')] char val) { }
static void M2(decimal val) { }
static void M3([ConstantExpected(Min = 0, Max = 1)] int val) { }
static void M4([ConstantExpected(Min = int.MinValue)] int val) { }
Mikor kell letiltani a figyelmeztetéseket?
A szabály megsértése hibát jelez a kódban, és mindig ki kell javítani.
Dolgozzon együtt velünk a GitHubon
A tartalom forrása a GitHubon található, ahol létrehozhat és áttekinthet problémákat és lekéréses kérelmeket is. További információért tekintse meg a közreműködői útmutatónkat.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: