2009-10-31 5 views
0

J'ai un portail avec deux alias différents, un pour eache langue: - en.mysite.com - it.mysite.comDNN Site via Localize CodeBehind

J'ai la question d'avoir l'anglais langue sur le premier portail et italien sur le second.

Ce que je l'ai fait est d'ajouter la ligne suivante dans le default.vb.aspx dans le Page_Load:

Si Request.Url.Host = "en.mysite.com" Alors System.Threading. Thread.CurrentThread.CurrentCulture = Nouveau System.Globalization.CultureInfo ("en-GB") ElseIf Request.Url.Host = "it.mysite.com" Alors System.Threading.Thread.CurrentThread.CurrentCulture = Nouveau System.Globalization .CultureInfo ("it-IT") Else System.Threading.Thread.CurrentThread.CurrentCulture = Nouveau System.Globalization.CultureInfo ("en-GB") Fin Si

Il fonctionne en partie, la variable LOCALEpermet est correctement réglée, mais j'ai remarqué que:

  • le combobox de la langue n'est pas correctement
  • la balise html ne change pas, il reste toujours avec la langue par défaut du portail, dans mon cas it-IT
  • le module de localisation ne fonctionne pas, par exemple en utilisant Locopon pour modifier le nom de tabulation pour chaque langue ne fonctionne pas.

Je pense que les questions précédentes sont liées à la même chose, mais je ne sais pas comment le résoudre

grâce

Répondre

0

Vous devez définir beaucoup plus tôt que Page_Load en remplaçant InitializeCulture(). Cela rend le processus un peu compliqué lorsque vous interagissez avec d'autres éléments (par exemple, si vous souhaitez le définir à partir d'un contrôle de formulaire, vous devez accéder directement à la requête). Voici les bases:

http://msdn.microsoft.com/en-us/library/bz9tc508.aspx