CA1707: Az azonosítók nem tartalmazhatnak aláhúzásjeleket

Tulajdonság Érték
Szabályazonosító CA1707
Cím Az azonosítók nem tartalmazhatnak aláhúzásjeleket
Kategória Elnevezés
A javítás romboló vagy nem romboló Törés – szerelvényeken történő felemeléskor

Nem törhető – típusparaméterek esetén
Alapértelmezés szerint engedélyezve a .NET 10-ben Nem
Alkalmazandó nyelvek C# és Visual Basic

Ok

Az azonosító neve tartalmazza az aláhúzásjel (_) karaktert.

Szabály leírása

Konvenció szerint az azonosítónevek nem tartalmazzák az aláhúzásjel (_) karaktert. A szabály ellenőrzi a névtereket, a típusokat, a tagokat és a paramétereket.

Az elnevezési konvenciók biztosítanak közös megjelenést a közös nyelvi futtatókörnyezetet célzó kódtárak számára. Ez csökkenti az új szoftverkódtárakhoz szükséges tanulási görbét, és növeli 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.

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

Távolítsa el az összes aláhúzásjel karaktert a névből.

Example

// This code violates the rule.
namespace ca_1707
{
    public interface IUser_Service
    {
        void Add_User(User_Model user_Model);
    }

    public class User_Service : IUser_Service
    {
        public const string Admin_Name = "admin";
        public event EventHandler? User_Added;

        public void Add_User(User_Model user_Model)
        {
            // ...
        }
    }

    public struct User_Model
    {
        public int User_Id { get; set; }
    }

    public enum User_Type
    {
        Client_User = 0,
        Manager_Admin = 1,
        Syper_Admin = 3,
    }
}

Mikor kell letiltani a figyelmeztetéseket?

Ne tiltsa le az éles kódra vonatkozó figyelmeztetéseket. A tesztkód esetében azonban nyugodtan letilthatja ezt a figyelmeztetést.

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

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

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

A Microsoft-kódban jelenleg aláhúzást használó és nem módosítható jól ismert metódusok esetén a szabályt el kell tiltani.

Kód konfigurálása elemzéshez

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

Ezt a beállítást konfigurálhatja csak erre a szabályra, az összes szabályra, vagy az ebben a kategóriában (elnevezés) szereplő összes szabályra, amelyekre vonatkozik. 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.