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

C# Discussion :

date "MM/dd/année" au lieu de "dd/MM/année"


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 343
    Par défaut date "MM/dd/année" au lieu de "dd/MM/année"
    Bonjour,

    Je développe en local et quand je teste mon application web ça marche et mes dates s'affichent sous la forme "dd/MM/yyyy".

    Par contre, quand je mets mon application web sur un serveur pour faire une simulation plus réelle, j'ai mes dates qui s'affichent sous la forme "MM/dd/yyyy".

    J'ai fait quelques recherches sur internet, mais je m'embrouille un peu d'autant plus qu'en essayant les codes proposés ça ne change rien...
    D'après ce que j'ai déjà compris, c'est une histoire de culture qui permet de définir la langue d'affichage...

    Pouvez-vous au moins me mettre sur la bonne piste?

    Merci d'avance!

  2. #2
    Membre régulier
    Profil pro
    Développeur informatique
    Inscrit en
    Mai 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2008
    Messages : 11
    Par défaut
    Quand tu met une date en string, tu peux directement dicter le format de sortie :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    dateToday = DateTime.Now;
    MessageBox.show(dateToday.ToString("dd-MM-yyyy:HH:m"));
    Bye !

  3. #3
    Membre expérimenté
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2008
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2008
    Messages : 159
    Par défaut
    le serveur doit être en anglais. regarde par là :
    http://msdn.microsoft.com/fr-fr/libr...bw(VS.85).aspx
    quand tu formates tes dates pour l'affichage, passe une cultureinfo (fr-FR) à la méthode tostring

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Effectivement c'est bien un problème de culture
    Tu peux spécifier la culture de ton application comme expliqué ici :
    http://msdn.microsoft.com/fr-fr/libr...08(VS.80).aspx
    (ça ira plus vite que d'indiquer la culture à chaque appel de ToString() )

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 343
    Par défaut
    Merci de vos réponses!

    Tomlev, c'est effectivement celà que je cherche à faire, mais sans succès...

    Citation Envoyé par tomlev Voir le message
    Effectivement c'est bien un problème de culture
    Tu peux spécifier la culture de ton application comme expliqué ici :
    http://msdn.microsoft.com/fr-fr/libr...08(VS.80).aspx
    (ça ira plus vite que d'indiquer la culture à chaque appel de ToString() )
    Dans mon code, j'ai mis:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    protected void Page_Load(object sender, EventArgs e)
    {
    if (!IsPostBack)
    {
    Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("fr-fr");
    Thread.CurrentThread.CurrentUICulture = new CultureInfo("fr-fr");
    base.InitializeCulture();
    }
    SetNewBrdDate();
    }
     
    private void SetNewBrdDate()
    {
    DateTime yesterday = DateTime.Now.AddDays(-1);
    actualBrdDateField.Text = yesterday.ToShortDateString();
    }
    J'ai toujours "06/16/2008" qui s'affiche...

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Il vaudrait mieux mettre ça dans le web.config, non ?
    C'est pas terrible de mettre la culture en dur dans le code, si un jour tu veux localiser ton appli tu devras le modifier...
    sinon la culture française c'est "fr-FR" (en respectant les majuscules/minuscules)

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 343
    Par défaut
    Citation Envoyé par tomlev Voir le message
    Il vaudrait mieux mettre ça dans le web.config, non ?
    C'est pas terrible de mettre la culture en dur dans le code, si un jour tu veux localiser ton appli tu devras le modifier...
    sinon la culture française c'est "fr-FR" (en respectant les majuscules/minuscules)
    Ok, j'ai rajouté:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <globalization requestEncoding="utf-8" responseEncoding="utf-8" culture="en-GB" uiCulture="fr-FR" />
    dans mon webconfig entre les balises <system.web>

    Mais ça ne marche toujours pas... j'ai toujours cette foutue date dans le format anglais...
    Faut-il que je fasse quelque chose d'autre dans mon code c# pour utiliser ce paramètre de la langue dans mon webconfig?

    Sinon dans ma première solution "en dur", j'avais bien mis les majuscules donc le problème ne vient pas de là...

    Merci

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Ben déjà tu as mis culture="en-GB" et pas culture="fr-FR"

    Sinon ça devrait marcher en principe, je sais pas trop ce qui va pas...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 20/04/2015, 16h18
  2. Réponses: 1
    Dernier message: 08/07/2013, 21h24
  3. Réponses: 11
    Dernier message: 03/12/2009, 16h32
  4. trouver date du jour a partir du numero de la semaine dans l'année
    Par JAMINF dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 19/06/2008, 16h41

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