Como localizar o aplicativo ASP.NET MVC?

Qual seria a melhor prática para localizar seu aplicativo ASP.NET MVC?

Eu gostaria de cobrir duas situações:

  • uma implantação de aplicativo no IIS que lida com vários idiomas
  • uma implantação de idioma / aplicativo.

Na primeira situação, você deveria ir com algum tipo de visão baseada em algo como ~ / View / EN, ~ / Ver / FI, ~ / Ver / SWE ou algo diferente?

E quanto ao segundo caso, apenas a configuração baseada em aplicativos via Web.config e apontar essas diferentes linguagens para diferentes URLs?

Você também pode dar uma olhada aqui Guia completo de localização da ASP.NET MVC 2 e Validação de modelo da ASP.NET MVC 2 Com Localização, esses resources ajudarão você ao trabalhar com a ASP.NET MVC 2.

Você localizaria seu aplicativo ASP.NET MVC da mesma maneira que faria com um aplicativo ASP.NET Web Form clássico.

Você não usaria páginas / visualizações diferentes para cada idioma, mas cada página suportaria vários idiomas usando montagens satélites.

Você pode ver a input do blog de Matt Hawley para mais explicações e exemplos.

Infelizmente, o código original de Matt Hawley não funciona na versão de lançamento do ASP.NET MVC. Confira uma postagem atualizada: http://blog.eworldui.net/post/2008/10/ASPNET-MVC-Localization-via-View-Engines.aspx

Em geral, o processo de localização não é tão bom no mundo do VS 2008 / ASP.NET MVC quanto nos formulários tradicionais da web. http://www.guysmithferrier.com/post/2009/05/Localizing-ASPNET-MVC.aspx

Dê uma olhada no projeto MvcStore de Rob Connery. Ele faz um screencast mostrando uma maneira de resolver o problema da globalização.

http://wekeroad.com/2008/04/24/mvcstore-part-5

Eu nunca fui convencido de lidar com a localização dentro de um formulário como Elijah sugere – os diferentes comprimentos e direções podem levar a formas muito complexas ou variadas.

Estou apenas começando com o MVC, mas tomando o método de desacoplamento você usaria o mesmo controlador independentemente da linguagem (tratando a linguagem apenas como uma visão) – isso lhe daria / Controller / Action / language / form

Há bom tutorial com recente atualização sobre como localizar asp.net mvc aplicativo cobrindo todos os aspectos, incluindo localização DisplayName, validação, usando o roteamento (armazenar o nome da cultura na URL), problemas com cache de saída e assim por diante … Alex Adamyan Blog – While meu teclado chora gentilmente

Nós realmente fomos completamente diferentes com a substituição do DataAnnotationsMetadaDataProvider . Lá você pode garantir que os valores de DisplayNameAttribute sejam resolvidos no idioma correto. Na verdade, você poderia até mesmo se livrar desse atributo e resolver por nomes de campo somente se isso fosse de alguma ajuda.

Eu escrevi este artigo há um tempo atrás. Ele usa um mecanismo de visualização personalizado. http://blog.oimae.com/2011/02/20/cultured-view-engine-for-mvc/

E outro tutorial para solução diferente

Tutorial: Criar a localização da ASP.NET MVC com detecção de idioma