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


CA1711: Az azonosítóknak nem szabad helytelen utótagot adni

Tulajdonság Érték
Szabályazonosító CA1711
Cím Az azonosítóknak nem szabad helytelen utótagokkal rendelkezniük
Kategória Elnevezés
A javítás kompatibilitástörő vagy nem törik Rendkívüli hírek
Alapértelmezés szerint engedélyezve a .NET 9-ben Nem

Ok

Az azonosítók utótagja helytelen.

Ez a szabály alapértelmezés szerint csak külsőleg látható azonosítókat tekint meg, de ez konfigurálható.

Szabály leírása

Konvenció szerint csak azoknak a típusoknak a neve, amelyek bizonyos alaptípusokat bővítenek ki, vagy amelyek bizonyos interfészeket implementálnak, vagy az ezekből a típusokból származtatott típusok, meghatározott fenntartott utótagokkal végződnek. Más típusnevek nem használhatják ezeket a fenntartott utótagokat.

Az alábbi táblázat a fenntartott utótagokat, valamint azokat az alaptípusokat és interfészeket sorolja fel, amelyekhez társítva vannak.

Toldalék Alaptípus/interfész
Attribute System.Attribute
Collection System.Collections.ICollection

System.Collections.IEnumerable

System.Collections.Queue

System.Collections.Stack

System.Collections.Generic.ICollection<T>

System.Data.DataSet

System.Data.DataTable
Dictionary System.Collections.IDictionary

System.Collections.Generic.IDictionary<TKey,TValue>
EventArgs System.EventArgs
EventHandler Eseménykezelő delegált
Exception System.Exception
Permission System.Security.IPermission
Queue System.Collections.Queue
Stack System.Collections.Stack
Stream System.IO.Stream

Ezenkívül a következő utótagokat nem szabad használni:

  • Delegate
  • Enum
  • Ex vagy hasonló utótagot az azonos típusú korábbi verzióktól való megkülönböztetéséhez
  • Flag vagy Flags enumerálási típusok esetén
  • Impl (inkább használja Core)
  • New, ha egy azonos nevű, de a New utótag nélküli tag már létezik

Az elnevezési konvenciók egységes megjelenést biztosítanak a .NET közös nyelvi futtatókörnyezetet célzó könyvtárak számára. Ezek a konvenciók csökkentik az új szoftverkódtárakhoz szükséges tanulási görbét, és növelik az ügyfelek bizalmát abban, hogy a kódtárat olyan személy fejlesztette ki, aki jártas a felügyelt kód fejlesztésében. További információ: Elnevezési irányelvek: Osztályok, szerkezetek és felületek.

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

Távolítsa el az utótagot a típusnévből.

Mikor kell letiltani a figyelmeztetéseket?

Ne tiltsa el a szabály figyelmeztetését, kivéve, ha az utótagnak egyértelmű jelentése van az alkalmazástartományban.

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 CA1711
// The code that's violating the rule is on this line.
#pragma warning restore CA1711

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.CA1711.severity = none

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

Kód konfigurálása elemzéshez

A következő beállítások segítségével konfigurálhatja, hogy a kódbázis mely részein futtassa ezt a szabályt.

Ezeket a beállításokat konfigurálhatja csak erre a szabályra, az összes szabályra, vagy az ebben a kategóriában szereplő összes szabályra (elnevezési), amelyekre vonatkoznak. További információ: Kódminőségi szabály konfigurációs beállításai.

Adott API-felületek belefoglalása

A api_surface beállítással konfigurálhatja, hogy a kódbázis mely részein futtassa a szabályt az akadálymentességük alapján. Ha például meg szeretné adni, hogy a szabály csak a nem nyilvános API-felületen fusson, adja hozzá a következő kulcs-érték párot a projekt egyik .editorconfig fájljához:

dotnet_code_quality.CAXXXX.api_surface = private, internal

Jegyzet

Cserélje le a XXXXCAXXXX részét a vonatkozó szabály azonosítójára.

Utótagok engedélyezése

Konfigurálhatja az engedélyezett utótagok listáját, az egyes utótagokat pedig a pipa karakter ("|") választja el egymástól. Ha például meg szeretné adni, hogy a szabály ne fusson a Jelző és a Jelzők utótagok között, adja hozzá a következő kulcs-érték párot a projekt egyik .editorconfig fájljához:

dotnet_code_quality.ca1711.allowed_suffixes = Flag|Flags

Lásd még