Problemas com entrada de dados em Visual C#

Estou com um pequeno problema. Meu professor explicando sobre swith me pediu para pedir a sigla de um estado ao usuario e dizer sua origem. o código é tipo esse:

[code]string estado;
Console.Write(“informe seu Estado”);
estado = Console.ReadLine();

        switch (estado)
        {
            case "BA": Console.WriteLine("você é baiano");
                break;
            case "SP": Console.WriteLine("você é paulista");
                break;
            case "RJ": Console.WriteLine("você é carioca");
                break;
            case "MG": Console.WriteLine("você é mineiro");
                break;
            default: Console.WriteLine("Estado nao encontrado");
                break;
        }

        Console.ReadKey();

[/code]

O problema aparece quando o usuário resolve digitar sua sigla em minusculo.ja tentei usar :estado = estado.ToUpper();mas não resolveu.
Alguem poderia me dizer como eu posso resolver esse problema?

Debugue o código e veja qual o valor é atribuido a variável estado na linha

estado = estado.ToUpper();  

Se você colocar essa linha antes do switch, o problema deve ser resolvido. De qualquer forma, da uma olhada no link:
http://msdn.microsoft.com/en-us/library/ewdd6aed.aspx