• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Hugo Marinho

Globalização com Master Pages.

2 mensagens neste tópico

Bom Dia Pessoal,

Estou a tentar inserir Multi Língua numa Web application .Net, mas estou com uma dificuldade em conseguir fazer o Override á culture na Master Page, pelo que investiguei é um problema da framework (Não é possível InitializeCulture  na Master Page).

Alguém pode ajudar?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

:smoke:

Bem depois de algumas busca e testes..... e queimar a cabeça consegui uma forma simples de resolver o assunto, deixo a solução que implementei para a eventualidade de ajudar alguém que no futuro tenha uma dificuldade semelhante.

Código a inserir onde necessitarem de implementar a alteração da lingua (No meu caso tenho uns LinkButtons onde faço essa operação):

protected void UseEnglishAction_Click(object sender, ImageClickEventArgs e)

    {

        HttpContext context = HttpContext.Current;

        context.Session["Language"] = new CultureInfo("en-GB");

        // Re-process current page from the start

        context.Server.Transfer(context.Request.Path);

    }

Na BasePage:

    protected override void InitializeCulture()

    {

        CultureInfo preferredCulture = HttpContext.Current.Session["Language"] as CultureInfo;

        if (preferredCulture != null)

        {

            Thread.CurrentThread.CurrentUICulture = preferredCulture;

            Thread.CurrentThread.CurrentCulture = preferredCulture;

        }

        base.InitializeCulture();

    }

Penso que está mais ou menos explicita a solução(poderá é não ser a melhor por utilizarmos Session, mas para já não consegui fazer melhor), mas como sou novo em post de foruns, se por acaso necessitarem de ajuda na implementação, contactem-me.

Obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora