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

Framework .NET Discussion :

[LINQ] Additionner plusieurs QUERY


Sujet :

Framework .NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 22
    Par défaut [LINQ] Additionner plusieurs QUERY
    Bonjour à tous,

    Je dispose de plusieurs requetes LINQ qui me renvoi la meme structure.
    Comment additionner ou fusionner ces "résultats" ?
    De plus, j'ai un probleme de déclaration de variable (cf plus bas).

    Pour donner une idée plus clair de ce que je veux faire, voici un ex completement inventé, mais qui résume bien ce que j'aimerai :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    var QUERY1 = from aTest in db.MyTest where aTest.Name == "One Name" select aTest ;
    if (MONTEST)
    var QUERY2 = from aTest in db.MyTest where aTest.Name == "Second Name" select aTest ;
     
    var QUERY = QUERY1 + QUERY2 ;
    1/ QUERY2 n'est pas connu en dehors du if (normal me direz vous), mais comment la déclarer en dehors du if puisque "var QUERY2 = null;" voir "var QUERY2 = new var;" ou quelque chose du genre est impossible ?

    2/ Comment ajouter mes deux QUERY dans un QUERY finale ?

    Merci de me donner ne serait-ce qu'une piste

    Bertrand

  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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var QUERY1 = from aTest in db.MyTest where aTest.Name == "One Name" select aTest ;
    if (MONTEST)
    var QUERY2 = from aTest in db.MyTest where aTest.Name == "Second Name" select aTest ;
    
    var QUERY = QUERY1.Union(QUERY2) ;
    A tester

  3. #3
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 22
    Par défaut
    Merci, ca a l'air de fonctionner !
    Une idée pour la déclaration du 'var' svp ?

  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
    Si tu connais le type de ATest (disons que c'est T), tu peux déclarer query1 et query2 comme IEnumerable<T>
    Personnellement je n'utilise pas trop la notion de "var", je préfère manipuler des objets fortement typés

  5. #5
    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
    Citation Envoyé par tomlev Voir le message
    Si tu connais le type de ATest (disons que c'est T), tu peux déclarer query1 et query2 comme IEnumerable<T>
    Personnellement je n'utilise pas trop la notion de "var", je préfère manipuler des objets fortement typés
    var est typé. Il référence un objet typé si ce n'est qu'on ne déclare pas l'objet préalablement

  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
    Citation Envoyé par Ditch Voir le message
    var est typé. Il référence un objet typé si ce n'est qu'on ne déclare pas l'objet préalablement
    Certes... mais ce n'est pas un type auquel tu peux faire référence, ce qui, dans le cas présent, pose problème puisqu'on ne peut pas déclarer la variable puis l'initialiser dans le if

Discussions similaires

  1. Attendre la fin de plusieurs Query(web) pour continuer?
    Par Dantore dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 06/08/2009, 17h05
  2. Réponses: 12
    Dernier message: 23/04/2009, 14h53
  3. Réponses: 5
    Dernier message: 20/10/2008, 10h07
  4. Possible d'optimiser (Plusieurs querys en 1 seule)??
    Par MadCat34 dans le forum Langage SQL
    Réponses: 13
    Dernier message: 05/12/2005, 16h25
  5. Qreport avec groupe et plusieurs query
    Par Oluha dans le forum Bases de données
    Réponses: 14
    Dernier message: 17/11/2005, 11h16

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