Busca online em todo site:
NETITC

Seja bem vindo(a) Visitante, voc no est logado deseja logar
na comunidade ASPNETi.COM e participar de servios e promoes ? clique aqui.




Título do Artigo

Resources e Internacionalização usando Visual Studio.NET 2005 (Parte II)


Data Publicação: 17/12/2005 0:10:38
Total de visualizações: 2380

comente
 


Olá pessoal meu nome é Maurício Júnior, a parte II desse artigo falo e mostro com exemplos funcionais e ilustrativos a primeira forma de passar uma aplicação para ficar em multi-idiomas, isto é, inglês e português. Deixo claro que esse artigo é uma continuação, portanto, verifique primeiramente a parte I para depois verificar a parte II.

 

 

Uso o mesmo exemplo que foi utilizado no artigo parte I criado no dia 13/12/2005. Esse artigo mostra um sistema que já verifica qual a linguagem da máquina do usuário e já escolhe qual arquivo .resx utilizar na aplicação.

É de simples entendimento e ainda ficou mais fácil desenvolver com a ferramenta Visual Studio.NET 2005.

 

 

Antes de começar efetivamente o artigo, criei outra frase criptografada para você leitor, verificar e descriptografar. No final da trilogia do artigo sobre Resources e Internacionalização, terá um prêmio para quem descobrir as frases criptografadas. A dica é: utilizo criptografia dos tempos antigos.

 

Frase criptografada:

N Uhrtzj Rstchn.MDS ehbnt zhmcz ldjgnq bnl z udqrzn 1994, drstchn oqz uzjdq.

 

 

No artigo anterior, criei um arquivo.resx chamado MyString.resx, agora criei mais um artigo chamado MyString.en.resx. Da mesma forma que foi feito o arquivo MyString.resx, deve ser feito o MyString.en.resx. Para não tem muito re-trabalho, acabei copiando o mesmo e colocando no mesmo diretório usando a ferramenta, depois apenas renomeei o arquivo para MyString.en.resx. Deixo claro que não é bom nem aconselhável fazer isso dessa forma. Antes de desenvolver os arquivos, sempre falo que não existe mágica em relação à programação, ou seja, não tem como o programa desenvolver uma tradução automática para traduzir o seu sistema ou site. A não ser que seja feito um framework todo especializado para isso.

 

Acrescentei algumas chaves e valores dentro do arquivo MyString.resx.

 

Chave              Valor

MEUPC       MEU COMPUTADOR

PRINCIPAL   MEU VALOR

SEUPC       SEU COMPUTADOR

 

 

 

 

O arquivo MyString.en.resx, coloquei os mesmos nomes porém com outros valores.

 

Chave              Valor

MEUPC       MY COMPUTER

PRINCIPAL   MY VALUE

SEUPC       YOUR PC

 

 

 

 

Depois de configurar os arquivos da forma que desejei, dentro da classe default.aspx.cs criei dois labels onde poderei mostrar os valores conforme configurei anteriormente.

 

meu pc: <asp:Label ID="lblmeupc" runat="server"></asp:Label>

 

seu pc: <asp:Label ID="lblseupc" runat="server"></asp:Label>

 

Segue o código fonte da página default.aspx:

 

<%@ Page Language="C#" Culture="auto" UICulture="auto" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

 

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

 

<%@ Register Src="~/include/menu.ascx" TagPrefix="Prefixo" TagName="menu" %>

<%@ Register Src="~/include/topo.ascx" TagPrefix="Prefixo" TagName="topo" %>

 

<html xmlns="http://www.w3.org/1999/xhtml" >

<Prefixo:topo ID="topo" runat=server />

 

<body topmargin="0" leftmargin="0">

    <form id="form1" runat="server">

       

        <table width=100% border=1>

            <tr>

                <td valign=top width="190">

                    <Prefixo:menu ID="menu" runat=server />

                </td>

                <td valign=top>

                    meu pc: <asp:Label ID="lblmeupc" runat="server"></asp:Label>

                    <br /><br />

                    seu pc: <asp:Label ID="lblseupc" runat="server"></asp:Label>

                </td>

            </tr>

    </form>

 

</body>

</html>

 

Note no código da página quatro pequenas palavras na primeira linha da página:

Culture="auto" UICulture="auto", dessa forma coloco a página pegando a cultura do cliente, ou seja, do browser.

Agora, dentro do código da classe digitei apenas duas linhas de programação para mostrar ao usuário o que defini nos arquivos .resx.

 

lblmeupc.Text = Resources.MyStrings.MEUPC;

lblseupc.Text = Resources.MyStrings.SEUPC;

 

Não assuste, são apenas essas duas linhas de código mesmo. Clique F5 e irei esperar o resultado. No meu cliente, está configurado para a linguagem principal PORTUGUÊS. Segue o resultado:

 

 

 

 

Veja que o mesmo funcionou perfeitamente. Estando em português, o mesmo pegou os valores do meu arquivo MyString.resx. Preciso definir no meu cliente outra língua, ou seja, inglês. Siga os passos:

 

Abra o Internet Explorer, depois menu ferramentas e depois opções da Internet....

 

 

 

 

Apareceu uma tela de configurações, existe um botão chamado IDIOMAS. Cliquei no mesmo e apareceu outra tela.

 

 

 

 

Defini apenas que a língua INGLÊS (ESTADOS UNIDOS) [en-us] seja a primeira do meu cliente. Segue a ilustração:

 

 

 

 

Com isso, apenas simulei que o meu cliente é inglês e não português, ou seja, imagine que um usuário dos Estados Unidos da América esteja entrando em seu sistema ou site. Clicando apenas em refresh da página aberta, note que as descrições foram mudadas para a outra língua.

 

 

 

 

O próximo artigo da série, mostrarei como é fácil mudar tanto para inglês, português ou espanhol dentro do seu sistema ou site apenas clicando nos links: INGLES, PORTGUES, ESPANHOL, com algumas opções mais avançadas.

 

Espero ter ajudado a todos. Qualquer dúvida, pode entrar em contato, será um prazer.

 

Mauricio Junior

e-mail: mauricio@aspneti.com

Blog: http://spaces.msn.com/members/mauricioborgesjunior

Thespoke: mborges

 



Total de visualizações: 2380
voltar   comente  subir

Autor:


Por:Mauricio Junior
Maurício Júnior
Formado pela Faculdade Anhanguera, Especialista pela FGV (Fundação Getúlio Vargas), Pós-Graduação em Docência Superior e cursando Mestrado na UNB Engenharia Elétrica; .
Tenho 27 anos e possuo sete livros publicados pela editora Ciência Moderna no ano de 2009. Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.COM, onde publico artigos, vídeos, ebooks e livros Publico artigos, vídeos e podcast em outras comunidades. Trabalho como Analista de Sistemas / Desenvolvedor na empresa ATP S/A. Blog:  blog.mauriciojunior.orgSite pessoal  www.mauriciojunior.org


Comentários:


Comente (dê sua opinião): VOCÊ PRECISA ESTAR LOGADO

Comentário:
Código Imagem:  (digite o código da imagem respeitando maiúsculo e minúsculo)

Favor digitar o código da imagem para cadastramento.

 

Outros Artigos do Autor

Padrão de Codificação
Convertendo String para Guid
Inserindo Usuário no Banco de Dados MYSQL Usando Tecnologia AJAX
Mensagem JavaScript com .NET
Como fechar todos os forms de um aplicativo para dispositivo móvel
Novo Firefox 3.0 - o chamado Minefield
Máscara valor que funciona
iGas - Sistema de Controle de Combustível
Vírus - Full video Pamela Anderson
Sistema de Login em ASP – Parte IX (Utilizando três camadas)
Permissão de Página Utilizando Web.Config
GridView Parte II
ASP.NET MVC
TreeView usando Banco de Dados
Permitir Teste pelo Browser no WebService
Vídeo Sobre Atributes e String Builder com Visual Studio .NET 2005
Serviços de Web Call Center e SMS Integrado disponível
Linguagem de programação: Nunca faça isso - C#.NET
Criando Números Aleatoriamente
Alongar é preciso
ASPNETi no seu celular
Atendimento online
Visualizar no Próprio Mail (Macbook)
Visual SourceSafe - Série 4
Integração é necessário
Aplicativos para Dispositivos Móveis, Usando C#.NET com a ferramenta Visual Studio.NET e com Banco de Dados MySQL e SQL Server
Vídeo: Série Atlas.NET - Parte II
Tata Motors (Grupo TCS)
GMaps com ASP.NET
Skyfire - browser mobile
Visual Source Safe - Série 1
Cortando String XML
Nova promoção hoje e amanhã para usuários da comunidade aspneti.com
Sistema de Login em ASP – Parte IX
Sistema ASP 3.0 utilizando 3 camadas – Parte 2

Publicidade:

[sumir] [aparecer]
DEVMEDIA




Informaes Online:

Usurios Online: 614
Artigos:  663
Vdeos:  47
PodCast's:  31
Frum:  3098
Empregos:  1226
Usurios Cadastrados: 5794

Categoria de Artigos

Vdeos

Enquete - D sua opinio

 Os podcasts tem sido proveitoso pra você?

 

Colaboradores

Foto Autor autor: Mauricio Junior   
publicou 382 artigo(s).
Foto Autor autor: Júlio Battisti   
publicou 51 artigo(s).
Foto Autor autor: Fabio Galante Mans   
publicou 28 artigo(s).
Foto Autor autor: Kleber Becerra   
publicou 10 artigo(s).
Foto Autor autor: Ramon Durães   
publicou 6 artigo(s).
Foto Autor autor: Ebenézer de Souza   
publicou 5 artigo(s).
Foto Autor autor: Fabio Aguiar   
publicou 4 artigo(s).
NETITC