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

Linq Discussion :

Format de date


Sujet :

Linq

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 3
    Points : 4
    Points
    4
    Par défaut Format de date
    Bonjour,

    Je débute avec Linq (et le dev en général). J'ai une fonction qui fait appel à ma base de données pour remplir une DropDownList où je concatène plusieurs champs pour avoir quelque chose comme ça :

    Intitulé du Module - Du dd/mm/yyyy au dd/mm/yyyy

    Le souci est que ça m'affiche mm/dd/yyyy 00:00.

    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
     
    Private Function Init_Ddl() As Boolean
     
            Dim MyDtCtx As InscriptionsDataContext = New InscriptionsDataContext
            ddlModule.DataValueField = "Code"
            ddlModule.DataTextField = "Libelle"
     
            Dim Myreq = From MB In MyDtCtx.MODULE_BASE Join MAO In MyDtCtx.MODULE_AO On MB.ID_MOD_BASE Equals MAO.IDMODBASE Join Session In MyDtCtx.SESSION On MAO.ID_MOD_AO Equals Session.ID_MOD_AO _
                                Select Code = MB.ID_MOD_BASE, Libelle = MB.LIB_MOD_BASE + " - Du " + Session.DATE_DEB_SESS + " au " + Session.DATE_FIN_SESS
     
           ddlModule.DataSource = Myreq
     
           ddlModule.DataBind()
     
    End Function
    J'ai essayé "convert" (entre autres !), ça ne marche pas avec Linq. J'ai également tenté String.Format, ça passe mais pour une seule date, dès que j'essaie de concaténer le tout, ça ne marche plus...

    Merci d'avance

    Enfertiti

  2. #2
    Nouveau membre du Club
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Points : 28
    Points
    28
    Par défaut
    essaye comme ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Function Init_Ddl() As Boolean
     
            Dim MyDtCtx As InscriptionsDataContext = New InscriptionsDataContext
            ddlModule.DataValueField = "Code"
            ddlModule.DataTextField = "Libelle"
     
            Dim Myreq = From MB In MyDtCtx.MODULE_BASE Join MAO In MyDtCtx.MODULE_AO On MB.ID_MOD_BASE Equals MAO.IDMODBASE Join Session In MyDtCtx.SESSION On MAO.ID_MOD_AO Equals Session.ID_MOD_AO _
                                Select Code = MB.ID_MOD_BASE, Libelle = MB.LIB_MOD_BASE + " - Du " + Format(Session.DATE_DEB_SESS,"dd/MM/yyyy") + " au " + format(Session.DATE_FIN_SESS,"dd/MM/yyyy")
     
           ddlModule.DataSource = Myreq
     
           ddlModule.DataBind()
     
    End Function
    ca peut peut etre marcher.

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Merci pour la réponse J'ai essayé, j'ai le même message d'erreur que tout à l'heure.
    Impossible de traduire l'expression 'Format (Convert (Session.DATE_FIN_SESS) , "dd/MM/yyyy")' en SQL et impossible de la considérer comme une expression locale.
    Mais finalement, je m'en suis sortie avec String.Format que je n'utilisais pas correctement. Maintenant que j'ai compris, ça marche !
    Voici le code, ça pourrait servir à un débutant comme moi et lui éviter une matinée de recherche !!
    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
    18
     
     Private Function Init_Ddl() As Boolean
     
            Dim MyDtCtx As InscriptionsDataContext = New InscriptionsDataContext
            ddlModule.DataValueField = "Code"
            ddlModule.DataTextField = "Libelle"
     
            Dim Myreq = From MB In MyDtCtx.MODULE_BASE Join MAO In MyDtCtx.MODULE_AO On MB.ID_MOD_BASE Equals MAO.IDMODBASE Join Session In MyDtCtx.SESSION On MAO.ID_MOD_AO Equals Session.ID_MOD_AO _
                                Select New With { _
                                    .Code = Session.ID_SESSION, _
                                    .Libelle = String.Format("{0} - Du {1:dd MMMM yyyy} au {2:dd MMMM yyyy}", MB.LIB_MOD_BASE, Session.DATE_DEB_SESS, Session.DATE_FIN_SESS) _
                                    }
     
            ddlModule.DataSource = Myreq
     
            ddlModule.DataBind()
     
        End Function
    Enfertiti

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

Discussions similaires

  1. Format de date
    Par royrremi dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 01/06/2004, 17h32
  2. Détecter le format de date au démarrage
    Par stigma dans le forum Access
    Réponses: 2
    Dernier message: 20/02/2004, 11h04
  3. Réponses: 11
    Dernier message: 02/09/2003, 14h20
  4. Problème de Format de date
    Par titititi007 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 18/06/2003, 08h19
  5. Réponses: 3
    Dernier message: 06/05/2002, 18h24

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