Usuário com melhor resposta
Multi Cultura ASP.NET

Pergunta
-
Apenas estou conseguindo alterar a cultura utilizando o seguinte código na página teste.aspx.cs, não consigo a colocar na Master para não ter que repetir em todas as páginas o mesmo código.
protected override void InitializeCulture() { CultureInfo myCultureInfo = new CultureInfo("en"); Thread.CurrentThread.CurrentCulture = myCultureInfo; Thread.CurrentThread.CurrentUICulture = myCultureInfo; base.InitializeCulture(); }
Gostaria de saber onde devo colocar o código de alteração de cultura para que funcione em todas as páginas sem a necessidade de "multiplicação" do mesmo código.
Respostas
-
Olá!
Crie uma classe base(que herde de System.Web.UI.Page), e herde todas as paginas dessa classe base.
Ai nessa classe base você da o override.
Ex
public class BaseAspNetClass : System.Web.UI.Page { protected override void InitializeCulture() { CultureInfo myCultureInfo = new CultureInfo("en"); Thread.CurrentThread.CurrentCulture = myCultureInfo; Thread.CurrentThread.CurrentUICulture = myCultureInfo; base.InitializeCulture(); } } public partial class WebForm1 : BaseAspNetClass { .... }
--
Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta
- Editado Rodrigo Suleiman quinta-feira, 26 de janeiro de 2017 19:03
- Marcado como Resposta Ivan Junges sexta-feira, 27 de janeiro de 2017 13:38
-
Sim, resolve obrigado por ajudar!
mas resolvi colocando no global.asax no método Application_BeginRequest. Assim não preciso alterar em todas as outras paginas.
protected void Application_BeginRequest(object sender, EventArgs e) { CultureInfo myCultureInfo = new CultureInfo(Request.Cookies["idioma"].Value); Thread.CurrentThread.CurrentCulture = myCultureInfo; Thread.CurrentThread.CurrentUICulture = myCultureInfo; }
- Marcado como Resposta Ivan Junges sexta-feira, 27 de janeiro de 2017 13:40
- Editado Ivan Junges sexta-feira, 27 de janeiro de 2017 13:41
Todas as Respostas
-
Olá!
Crie uma classe base(que herde de System.Web.UI.Page), e herde todas as paginas dessa classe base.
Ai nessa classe base você da o override.
Ex
public class BaseAspNetClass : System.Web.UI.Page { protected override void InitializeCulture() { CultureInfo myCultureInfo = new CultureInfo("en"); Thread.CurrentThread.CurrentCulture = myCultureInfo; Thread.CurrentThread.CurrentUICulture = myCultureInfo; base.InitializeCulture(); } } public partial class WebForm1 : BaseAspNetClass { .... }
--
Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta
- Editado Rodrigo Suleiman quinta-feira, 26 de janeiro de 2017 19:03
- Marcado como Resposta Ivan Junges sexta-feira, 27 de janeiro de 2017 13:38
-
Sim, resolve obrigado por ajudar!
mas resolvi colocando no global.asax no método Application_BeginRequest. Assim não preciso alterar em todas as outras paginas.
protected void Application_BeginRequest(object sender, EventArgs e) { CultureInfo myCultureInfo = new CultureInfo(Request.Cookies["idioma"].Value); Thread.CurrentThread.CurrentCulture = myCultureInfo; Thread.CurrentThread.CurrentUICulture = myCultureInfo; }
- Marcado como Resposta Ivan Junges sexta-feira, 27 de janeiro de 2017 13:40
- Editado Ivan Junges sexta-feira, 27 de janeiro de 2017 13:41