Pergunta

Eu estou usando o SqlMembershipProvider para realizar o gerenciamento de usuários do meu site ASP.NET. Em particular, as necessidades do site para ser multi-lingual (globalizada!).

Quando eu criar usuários que a utilizam de Membership.CreateUser boa que eu recebo exceções para coisas como e-mails duplicados, duplicado nomes de usuários etc. Mas o que eu quero é re-uso que texto de exceção por tê-lo localizado na cultura do thread atual.

Eu sou positivo que eu estou definindo a cultura segmento interface do usuário atual corretamente, etc desde que todos os outros recursos de globalização são totalmente funcionais.

Eu estava sob a impressão de todos os textos exceção do .NET Framework foram globalizado. Não são eles ???

Em particular, eu estou testando para francês. Acho que já instalou com sucesso o francês .NET 3.5 SP1 pacote de idioma (mas não certo - existe uma maneira de verificar !?) seguindo as instruções do aqui .

É talvez o caso que apenas as exceções System.Web.Security.Membership não são localizados? Ou estou faltando uma etapa de configuração do ambiente?

Qualquer ajuda seria ótimo.

Andrew.

Foi útil?

Solução

As mensagens de exceção não são localizados.

Você deve localizá-los sua auto usando os códigos de erro:

Public Shared Function ErrorCodeToString( _
                    ByVal createStatus As MembershipCreateStatus) As String
    Select Case createStatus
        Case MembershipCreateStatus.DuplicateUserName
            Return Resources.Resource.Account_DuplicateUserName

        Case MembershipCreateStatus.DuplicateEmail
            Return Resources.Resource.Account_DuplicateEmail

        ...

este link MSDN para uma lista completa dos códigos de status.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top