Comment obtenir une représentation sous forme de chaîne d'une énumération (Enum) en C# ? Problème avec ToString()
Bonjour à tous ! Je suis un développeur C# débutant et j'ai rencontré un problème en travaillant avec les énumérations (enum). J'ai ce code :
```csharp
public enum StatusCode
{
Success = 200,
NotFound = 404,
ServerError = 500
}
StatusCode status = StatusCode.Success;
Console.WriteLine(status); // Affiche "Success"
```
À première vue, tout fonctionne — ToString() par défaut donne le nom de la constante. Mais quand j'ai essayé de l'utiliser dans un scénario plus complexe, par exemple pour la journalisation ou la sauvegarde dans une base de données, des problèmes sont survenus. J'ai besoin d'obtenir une chaîne comme "200" (la valeur numérique), et non "Success". Je veux aussi que la représentation sous forme de chaîne soit plus flexible : par exemple, qu'elle contienne des espaces (comme "Not Found" au lieu de "NotFound") ou qu'elle soit localisée.
J'ai essayé différentes options :
```csharp
// Tentative 1 : simplement ToString()
string s1 = status.ToString(); // "Success" - pas ce qu'il faut
// Tentative 2 : conversion en int
string s2 = ((int)status).ToString(); // "200" - ra
No answers yet.
Connectez-vous pour laisser une réponse
Blogs