C#: Declaração e validação de valores do Enum

Palavras-chave: C#, CSharp, enum, declaração, validação, framework

Uma das boas práticas de programação em C# é o uso do enum. Ele serve para substituirmos constantes nomeadas que são relacionadas mas ficam “perdidas” no código.

//Declaração do enum
public enum ImageAlign
{
    None,
    Left,
    Right
}

public void MeuMetodo(ImageAlign imageAlign)
{
}

Apenas temos que ter o cuidado de validar o tipo passado como parâmetro, pois o “cliente” pode usar nosso método assim:

MeuMetodo((ImageAlign)1)

Para validar o valor do enum passado como parâmetro para um método use:

public void MeuMetodo(ImageAlign imageAlign)
{
    if(!Enum.IsDefined(typeof(ImageAlign), imageAlign))
        throw new ArgumentException();
    //....
}
This entry was posted in CSharp. Bookmark the permalink.

One Response to C#: Declaração e validação de valores do Enum

  1. Alisson Gomes says:

    Roberto,
    É interessante ver o processo de verificação do tipo do objeto.
    Mas discordo que isso tenha que ser feito, ter o cuidado de validar
    o parâmetro passado.
    Se tivermos que verificar todo tipo de entrada de dados porque o cara
    (cliente) pode fazer um “cast” estamos perdido.

    O cara que faz o “cast” é o responsável em garantir que ele está certo,
    pois o “cast” é como se o programador estivesse falando:

    — Ei compilador esquece que tipo é esse, manda esta variável com
    este tipo aqui “(ImageAlign)1”.

    No mais só. Belo trabalho vocês estão fazendo aqui.

Leave a Reply

Your email address will not be published. Required fields are marked *