Como obter a representação em string de uma enumeração (Enum) em C#? Problema com ToString()
Olá a todos! Sou um desenvolvedor C# iniciante e encontrei um problema ao trabalhar com enumerações (enum). Tenho o seguinte código:
```csharp
public enum StatusCode
{
Success = 200,
NotFound = 404,
ServerError = 500
}
StatusCode status = StatusCode.Success;
Console.WriteLine(status); // Exibe "Success"
```
À primeira vista, tudo funciona — ToString() por padrão retorna o nome da constante. Mas quando tentei usar isso em um cenário mais complexo, como para logging ou salvar em um banco de dados, surgiram problemas. Preciso obter uma string do tipo "200" (valor numérico), e não "Success". Também quero que a representação em string seja mais flexível: por exemplo, que contenha espaços (como "Not Found" em vez de "NotFound") ou que seja localizada.
Tentei diferentes opções:
```csharp
// Tentativa 1: apenas ToString()
string s1 = status.ToString(); // "Success" - não é o que preciso
// Tentativa 2: conversão para int
string s2 = ((int)status).ToString(); // "200" - já
No answers yet.
Faça login para deixar uma resposta
Blogs