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 :

Dates au formats européens et américains


Sujet :

C#

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 1
    Points : 2
    Points
    2
    Par défaut Dates au formats européens et américains
    Bonjour,

    Un logiciel a été développé en C# avec Oracle sous Windows dans un environnement européen où il marche.

    Puis il a été mis en production en Allemagne sous un windows (a priori européen ?) MAIS avec un Oracle configuré au format américain... et il ne marche pas.

    Dans le code, les dates saisies dans des formaulaires sous forme de strings sont transformées en DateTime avec la fonction Convert.ToDateTime

    exemple :
    DateTime maDate = new DateTime();
    maDate = Convert.ToDateTime("01/" + LISTtruc.SelectedValue + "/" + TBtruc.Text);

    La base de données de production ne peut pas être modifiée car elle sert à d'autres applications internationales.

    Comment résoudre ce problème ?
    La fonction Convert.ToDateTime tient-elle compte des paramètres du système d'exploitation ?

    Merci !

  2. #2
    Membre émérite Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Points : 2 925
    Points
    2 925
    Par défaut
    Citation Envoyé par Eternel débutant Voir le message
    La fonction Convert.ToDateTime tient-elle compte des paramètres du système d'exploitation ?
    Oui. cf la Doc : http://msdn.microsoft.com/fr-fr/libr...5e(VS.80).aspx
    Elle appelle la fonction DateTime.Parse : http://msdn.microsoft.com/fr-fr/libr...se(VS.80).aspx
    La méthode Convert.DateTime n'a pas le même comportement selon la machine sur laquelle elle est exécutée.
    Le problème ne vient probablement pas d'Oracle, parce que tu communiques avec lui avec des objets DateTime ou OracleDateTime, donc pas des chaînes, donc pas formatés.

    Une façon plus propre de faire serait celle ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    int year = Convert.ToInt32(TBtruc.Text);
    int month = Convert.ToInt32(LISTtruc.SelectedValue);
    maDate = new DateTime(year, month, 1);

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

Discussions similaires

  1. [RegEx] Date au format américain
    Par thierry.kunzi dans le forum Langage
    Réponses: 2
    Dernier message: 09/07/2009, 08h40
  2. Afficher une date au format américain
    Par Gregory.M dans le forum ASP.NET
    Réponses: 4
    Dernier message: 25/11/2008, 17h04
  3. Problème Date au format Américain
    Par nocrash dans le forum VBA Access
    Réponses: 1
    Dernier message: 24/06/2007, 14h58
  4. Exporter dates au format américain
    Par RKU01 dans le forum Access
    Réponses: 5
    Dernier message: 01/12/2006, 21h28
  5. [MySQL] date au format europen
    Par somatino dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 22/11/2006, 18h08

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