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


CA1716: Az azonosítók nem felelnek meg a kulcsszavaknak

Tulajdonság Érték
Szabályazonosító CA1716
Cím Az azonosítók nem egyeznek a kulcsszavak
Kategória Elnevezés
A javítás kompatibilitástörő vagy nem törik Törés
Alapértelmezés szerint engedélyezve a .NET 9-ben Nem

Ok

Egy névtér, típus vagy virtuális vagy felülettag neve megegyezik egy fenntartott kulcsszóval egy programozási nyelven.

Ez a szabály alapértelmezés szerint csak külsőleg látható névtereket, típusokat és tagokat tekint meg, de konfigurálhatja a láthatóságot és a szimbólumtípusokat.

Szabály leírása

A névterek, típusok, valamint a virtuális és felülettagok azonosítói nem egyeznek a közös nyelvi futtatókörnyezetet megcélzott nyelvek által definiált kulcsszavakkal. A használt nyelvtől és a kulcsszótól függően a fordítóhibák és a kétértelműségek megnehezíthetik a kódtár használatát.

Ez a szabály a következő nyelveken ellenőrzi a kulcsszavakat:

  • Visual Basic
  • C#
  • C++/CLI

A kis- és nagybetűk megkülönböztetése a Visual Basic-kulcsszavakhoz, a kis- és nagybetűk megkülönböztetése pedig a többi nyelvhez használható.

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

Jelöljön ki egy nevet, amely nem jelenik meg a kulcsszavak listájában.

Mikor kell letiltani a figyelmeztetéseket?

Ha biztos abban, hogy az azonosító nem fogja összezavarni az API felhasználóit, és hogy a kódtár minden elérhető nyelven használható a .NET-ben, letilthatja a figyelmeztetést ebből a szabályból.

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

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.CA1716.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.

Elemzett szimbólumtípusok

Konfigurálhatja a szabály által elemezni kívánt szimbólumtípusokat. Az engedélyezett értékek a következők:

  • Namespace
  • NamedType
  • Method
  • Property
  • Event
  • Parameter

Több érték elkülönítése vesszővel (,). Az alapértelmezett érték az előző listában szereplő összes szimbólumtípust tartalmazza.

dotnet_code_quality.CA1716.analyzed_symbol_kinds = Namespace, NamedType, Method, Property, Event