Bien que les énumérations C# utilisent par nature des valeurs entières, les scénarios pratiques nécessitent souvent de lier les champs de chaîne de base de données à des représentations d'énumération significatives. Cet article présente des stratégies efficaces pour associer des chaînes à des énumérations, améliorant ainsi la clarté et la maintenabilité du code.
Une solution exploite les propriétés de classe pour imiter la syntaxe d'énumération. Considérez un LogCategory
cours :
<code class="language-csharp">public class LogCategory { private LogCategory(string value) { Value = value; } public string Value { get; private set; } // ... enumeration values public override string ToString() { return Value; } }</code>
Vous pouvez également utiliser des paramètres de chaîne de type sécurisé. Par exemple :
<code class="language-csharp">public static void Write(string message, LogCategory logCategory) { // ... logging logic using logCategory.Value }</code>
Cette approche offre une journalisation propre et efficace :
<code class="language-csharp">Logger.Write("This resembles enum usage.", LogCategory.Info);</code>
L'utilisation de propriétés de classe ou de chaînes de type sécurisé comble efficacement le fossé entre les données de base de données basées sur des chaînes et les énumérations fortement typées. Cette méthode améliore considérablement la lisibilité du code et simplifie l'interaction avec la base de données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!