IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Localization en ASP.NET 2.0


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 39
    Par défaut Localization en ASP.NET 2.0
    Bonjour,

    Je développe une appli web qui devra être déployée dans différents pays, mais à chaque fois sur une serveur avec un OS en US.

    Mon objectif est de rendre l'appli multilingue. 2 possibilités s'offrent à moi :
    - utiliser la culture du client
    - forcer la culture dans le paramétrage de l'appli.

    Les deux solutions sont envisageables, d'après ce que j'ai compris, par une simple configuration dans le web.config. Perso, je préfère la seconde solution, et j'ai donc essayé la ligne suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <globalization uiCulture="es" culture="es-MX" />
    ... sans succès.

    J'ai donc forcé la culture au niveau de la page par l'ajout du code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    protected override void InitializeCulture()
            {
                string lang = "es-MX";
                this.UICulture = lang;
                this.Culture = lang;
     
                System.Threading.Thread.CurrentThread.CurrentCulture =
                    System.Globalization.CultureInfo.CreateSpecificCulture(lang);
                System.Threading.Thread.CurrentThread.CurrentUICulture =
                    System.Globalization.CultureInfo.CreateSpecificCulture(lang);
                base.InitializeCulture();
            }
    ... là ça fonctionne, c'est à dire que le bon fichier resx est utilisé. De plus, je retrouve bien "es" quand je fais dans le Page_Load :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Response.Write("culture:"+System.Threading.Thread.CurrentThread.CurrentUICulture.TwoLetterISOLanguageName);
    Response.Write("<br>cultureUI:"+System.Globalization.CultureInfo.CurrentUICulture.TwoLetterISOLanguageName);
    Cependant, cette solution n'est pas satisfaisante. Comment se fait-il que la première solution ne fonctionne pas ??
    Pour info, j'ai trouvé le how to ici :
    http://msdn2.microsoft.com/en-us/lib...08(VS.80).aspx

    Merci d'avance !

  2. #2
    Expert confirmé
    Avatar de Ditch
    Inscrit en
    Mars 2003
    Messages
    4 160
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mars 2003
    Messages : 4 160
    Par défaut
    Sans aucune certitude, UICulture n'est pas case-sensitive?

    Sinon les pistes différentes pour la localization se trouvent ici: http://ditch.developpez.com/aspnet/tome5/

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 39
    Par défaut
    Le uiCulture est bien case sensitive, mais s'écrit comme je l'avais précisé.

    J'ai jeté un coup d'oeil du côté du machine.config, mais rien n'est précisé pour la globalization...

    Je ne comprends pas ... configurer un web.config est tout de même extrêmement simple, quelque chose d'autre doit passer au dessus du web.config... je ne vois que ça, mais quoi ?

    Toute piste sera étudiée !

  4. #4
    Membre émérite Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Par défaut
    Le problème vient des headers qu'envoit ton navigateur avec tes préférences. Celles-ci sont prioritaires par rapport au web.config.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 39
    Par défaut
    Effectivement,

    J'ai changé la langue par défaut de mon navigateur (dans ie --> Options Internet --> Général --> bouton Langues...), et effectivement, ça a pris le dessus.

    Ensuite, j'ai carrément enlevé toutes les langues, et je pensais que la ligne de mon web.config allait être prise en compte.

    Et bien non, toujours en fr-FR ! J'ai du mal à comprendre où il est allé le chercher ! sur mon OS ? Mais dans ce cas, comment arriver à utiliser les paramétrages globalization du web.config ???

  6. #6
    Membre émérite Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Par défaut
    Oui, il a pris le regional setting de l'OS. Concernant ta question, je n'ai pas de réponse immédiate. Par contre, je peux t'expliquer comment je gère la langue dans mon application: j'ai écrit un HttpModule qui force la langue sur le thread selon certains critères.

Discussions similaires

  1. mise en ligne local d'un site asp.net
    Par ecco27 dans le forum IIS
    Réponses: 2
    Dernier message: 29/10/2008, 15h16
  2. Réponses: 3
    Dernier message: 31/10/2007, 11h38
  3. Site Asp.net et report server en local
    Par Ruddy dans le forum ASP.NET
    Réponses: 2
    Dernier message: 24/04/2007, 12h13
  4. Réponses: 5
    Dernier message: 28/06/2006, 23h27
  5. [CR10][ASP.NET] PB Impression locale
    Par David.V dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 17/05/2004, 11h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo