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 :

Problème conversion date


Sujet :

ASP.NET

  1. #1
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 7
    Points : 5
    Points
    5
    Par défaut Problème conversion date
    Bonjour,
    je rencontre un problème de conversion de date "aléatoire".
    J'ai un procédure stockée dans laquelle j'ai un paramètre qui correspond à la date courante.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SqlParameter pDateCreation      = new SqlParameter("datecreation",SqlDbType.DateTime);
    pDateCreation.Value             = DateTime.Now.ToString("dd/MM/yyyy",DateTimeFormatInfo.InvariantInfo);
    Ca marche, mais des fois je lève une exception :

    System.Exception: Failed to convert parameter value from a String to a DateTime

    J'ai tracé la date lorsque cette exception est levée : 19/11/2007
    Le format est donc correct. Je ne comprends pourquoi ça passe dans 95% des cas..
    Une idée ?

  2. #2
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Pourquoi vouloir transformer en chaine de caractères ?
    Ceci fonctionnera beaucoup mieux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    pDateCreation.Value = DateTime.Now;

  3. #3
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Salut SaumonAgile,
    je préfère forcer la conversion pour une raison simple, si mon serveur est un serveur US, un dateTime.Now va me donner un format MM/dd/yyyy.
    Le format date de ma base sql server n'acceptant que le format dd/MM/yyyy (fr), l'insertion échouera.
    De plus ça ne m'explique tjrs pas pourquoi la conversion
    DateTime.Now.ToString("dd/MM/yyyy",DateTimeFormatInfo.InvariantInfo);
    échoue aléatoirement..

  4. #4
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    J'ai résolu mon problème, j'avais fait une belle boulette
    merci et à +

  5. #5
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Peux tu expliquer comment tu as résolu ? En utilisant ma méthode ?

    Parce qu'étant donné que ton champ dans la base est un type date, il n'y a aucune raison de mettre autre chose qu'un DateTime dans la valeur du paramètre SQL.

  6. #6
    Membre éclairé Avatar de zeavan
    Architect
    Inscrit en
    Avril 2003
    Messages
    590
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Autre

    Informations professionnelles :
    Activité : Architect

    Informations forums :
    Inscription : Avril 2003
    Messages : 590
    Points : 774
    Points
    774
    Par défaut
    Citation Envoyé par pit007 Voir le message
    J'ai résolu mon problème, j'avais fait une belle boulette
    merci et à +

    Comment as-tu resolu le probleme !!!!

    Maintenant je suis etonne que la solution de SaumonAgile ne fonctionne pas.

    Puisque le sqlparameter sait faire automatiquement le formatage necessaire, aussi bien pour les datetime ou les currency (le pied quoi).

  7. #7
    Futur Membre du Club
    Inscrit en
    Novembre 2007
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    salut,
    je forçais la conversion car j'avais déjà eu des problèmes lors d'insertion en base, mais il est vrai que lorsque j'avais rencontré ces problèmes je n'utilisais pas de procédure stockée. Avec le SQLParameter typé celà résoud mon problème. J'ai donc utilisé ta méthode Saumon Agile. Me suis compliqué pour rien
    @+

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

Discussions similaires

  1. Problème conversion date
    Par torres02 dans le forum Android
    Réponses: 4
    Dernier message: 17/05/2015, 23h23
  2. Problème conversion date vb.net access 2010
    Par ismaiila dans le forum VB.NET
    Réponses: 2
    Dernier message: 24/04/2014, 10h49
  3. problème conversion date en format yyMMdd
    Par CosaNostra dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 08/06/2010, 13h41
  4. problème conversion date en chaîne
    Par fakhita dans le forum Langage
    Réponses: 6
    Dernier message: 12/07/2007, 14h16
  5. Problème conversion date
    Par mat.M dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 30/03/2004, 15h05

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