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 :

Requête LINQ, WPF [Débutant]


Sujet :

C#

  1. #1
    Membre extrêmement actif
    Avatar de MarieKisSlaJoue
    Homme Profil pro
    Ingénieur Cloud
    Inscrit en
    Mai 2012
    Messages
    1 145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Roumanie

    Informations professionnelles :
    Activité : Ingénieur Cloud
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 1 145
    Billets dans le blog
    20
    Par défaut Requête LINQ, WPF
    Bonjour la question peu parraitre simple, mais malgré les cours et tuto je n'ai rien vu dessus.

    Peut on utiliser une requête CAML LINQ dans un wpf ? Chaque fois que je cherche je tombe que sur des projet SharePoint mais rien ne précise le cas des wpf.

    Si non. Y'a t'il un équivalant ?
    Ce post à été écrit par un panda
    Apollo 11 - AGC revue de code
    -- qwerty keybord

  2. #2
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    246
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 246
    Par défaut
    le wpf n'est pas en application cliente ? si oui c'est du client object model pour sharepoint qu'il va falloir utiliser.

  3. #3
    Membre extrêmement actif
    Avatar de MarieKisSlaJoue
    Homme Profil pro
    Ingénieur Cloud
    Inscrit en
    Mai 2012
    Messages
    1 145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Roumanie

    Informations professionnelles :
    Activité : Ingénieur Cloud
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 1 145
    Billets dans le blog
    20
    Par défaut
    Si c'est une application client, j'ai trouvé quelque chose qui me donne le même resultat au quel je veux arriver.

    C'est d'utiliser des requêtes REST et ça marche sauf dès que je vais faire des jointures.

    Par exemple ce code

    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
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    public void lycos()
            {
     
                listBoxResultat.Items.Clear();
                try
                {
     
                    dc.Credentials = System.Net.CredentialCache.DefaultCredentials;
     
                        var resultats = from Actions in dc.Actions
                                        join User in dc.ListeDInformationsUtilisateur on Actions.AffectationId equals User.ID
                                        join Contrats in dc.Contrats on Actions.ContratId equals Contrats.ID
                                        join Clients in dc.Clients on Actions.ClientId equals Clients.ID
                                        where Actions.ClientId == getIdClient(comboBoxClient.Text) && Actions.CategorieValue == comboBoxCate.Text
                                        && Actions.DateOuverture >= calendar1.SelectedDate && Actions.EtatValue == comboBoxEtat.Text
     
     
                                        orderby Actions.DateOuverture descending
     
                                        select new
                                        {
                                            Actions, 
                                            User,
                                            Contrats,
                                            Clients
                                        };
                        MessageBox.Show("Tu va rentré dedans");
                        foreach (var ticket in resultats)
                        {
                            MessageBox.Show("Catégorie : " + ticket.Actions.CategorieValue + "\nClient : "+ticket.Clients.NomAbrégé
                            +"\nEtat : " + ticket.Actions.EtatValue+"\nAction : " + ticket.Actions.Action + "\nDate D'ouverture : " + ticket.Actions.DateOuverture
                            + "\nContrat : " + ticket.Contrats.Contrat + "\nDate de cloture : " + ticket.Actions.DateCloture + "\nTemps passé : "+
                            ticket.Actions.TempsPassé+"\nAffectation : "+ticket.User.Compte+"\nDate d'execution : "+ ticket.Actions.DateDExecution +
                            "\nPriorité : "+ticket.Actions.PrioritéValue+ "\n");
                        }
                        MessageBox.Show("Tu es sortie");
                }
                catch
                {
                    MessageBox.Show("Vous devriez saisir une date.");
                }
     
            }
    Que j'ai fait grâce à un livre et à msdn. J'ai une erreur juste avant de rentrer dans le foreach. donc je pense que j'ai encore une erreur dans la syntaxe de mes jointure mais je ne vois pas laquel :/

    Je précise que sans jointure tout marche très bien (si j'enlève bien sur des info non disponible.)
    Ce post à été écrit par un panda
    Apollo 11 - AGC revue de code
    -- qwerty keybord

  4. #4
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    246
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 246
    Par défaut
    quelle est l'erreur ?

  5. #5
    Membre extrêmement actif
    Avatar de MarieKisSlaJoue
    Homme Profil pro
    Ingénieur Cloud
    Inscrit en
    Mai 2012
    Messages
    1 145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Roumanie

    Informations professionnelles :
    Activité : Ingénieur Cloud
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 1 145
    Billets dans le blog
    20
    Par défaut
    L'exception System.NotSupportedException n'a pas été gérée
    Message=La méthode 'Join' n'est pas prise en charge.
    Ce post à été écrit par un panda
    Apollo 11 - AGC revue de code
    -- qwerty keybord

  6. #6
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    246
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 246
    Par défaut
    j'avoue ne pas comprendre pourquoi il indique cette erreur .

    j'essaierai de tester cette semaine (pas de sharepoint sous la main pour le moment) pour reproduire l'erreur.

  7. #7
    Membre Expert

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 067
    Par défaut
    Bonjour,
    si tu as des infos non disponible et que tu fais une jointure dessus normal que ça plante tu peux faire tes requêtes en fonctions de tes infos disponible si tu veux.

    Petite question complémentaire, là tu es actuellement sur un projet WPF ? et tu essaye de faire du linq?

  8. #8
    Membre extrêmement actif
    Avatar de MarieKisSlaJoue
    Homme Profil pro
    Ingénieur Cloud
    Inscrit en
    Mai 2012
    Messages
    1 145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Roumanie

    Informations professionnelles :
    Activité : Ingénieur Cloud
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 1 145
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par youtpout978 Voir le message
    Bonjour,
    si tu as des infos non disponible et que tu fais une jointure dessus normal que ça plante tu peux faire tes requêtes en fonctions de tes infos disponible si tu veux.

    Petite question complémentaire, là tu es actuellement sur un projet WPF ? et tu essaye de faire du linq?

    Désolé mais je ne te suis pas, toutes mes info son disponible. Je ne vois pas des quelles tu parle :s

    Oui je suis sur un projet WPF, pour le linq je ne crois pas, j'en ai entendu parler mais je ne sais pas vraiment ce que c'est. Donc sauf si j'en fait inconsciament la réponse et non.
    Ce post à été écrit par un panda
    Apollo 11 - AGC revue de code
    -- qwerty keybord

  9. #9
    Membre Expert

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 067
    Par défaut
    tu dis ça
    Je précise que sans jointure tout marche très bien (si j'enlève bien sur des info non disponible.)
    et ceci est du linq
    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
                        var resultats = from Actions in dc.Actions
                                        join User in dc.ListeDInformationsUtilisateur on Actions.AffectationId equals User.ID
                                        join Contrats in dc.Contrats on Actions.ContratId equals Contrats.ID
                                        join Clients in dc.Clients on Actions.ClientId equals Clients.ID
                                        where Actions.ClientId == getIdClient(comboBoxClient.Text) && Actions.CategorieValue == comboBoxCate.Text
                                        && Actions.DateOuverture >= calendar1.SelectedDate && Actions.EtatValue == comboBoxEtat.Text
     
     
                                        orderby Actions.DateOuverture descending
     
                                        select new
                                        {
                                            Actions, 
                                            User,
                                            Contrats,
                                            Clients
                                        };
    donc oui tu en fais inconsciament, renomme ton sujet peu être et il faudrait qu'il soit dans une autre catégorie, tu auras surement plus d'aide

    pourrais-tu mettre la requête qui marche ?

  10. #10
    Membre extrêmement actif
    Avatar de MarieKisSlaJoue
    Homme Profil pro
    Ingénieur Cloud
    Inscrit en
    Mai 2012
    Messages
    1 145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Roumanie

    Informations professionnelles :
    Activité : Ingénieur Cloud
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2012
    Messages : 1 145
    Billets dans le blog
    20
    Par défaut
    Une requête qui marche serai par exemple



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
                     var resultats = from Actions in dc.Actions
                                                  where Actions.ClientId == getIdClient(comboBoxClient.Text) && Actions.CategorieValue == comboBoxCate.Text
                                        && Actions.DateOuverture >= calendar1.SelectedDate && Actions.EtatValue == comboBoxEtat.Text
     
     
                                        orderby Actions.DateOuverture descending
     
                                        select new
                                        {
                                            Actions 
                                         };
    Si vous dîtes que c'est du linq alors je vais peut être enfin trouver dans quelle direction m'orienter
    Ce post à été écrit par un panda
    Apollo 11 - AGC revue de code
    -- qwerty keybord

  11. #11
    Expert confirmé Avatar de Lapinpanda
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2009
    Messages
    3 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 230
    Par défaut
    Je renomme et déplace à l'endroit mieux approprié.

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

Discussions similaires

  1. Requête linq jointure
    Par oyigit dans le forum Linq
    Réponses: 5
    Dernier message: 18/03/2010, 16h02
  2. Réponses: 0
    Dernier message: 29/04/2009, 16h35
  3. Réponses: 7
    Dernier message: 06/04/2009, 16h29
  4. Colle sur un tri dans une requête linq to sql
    Par boby62423 dans le forum Linq
    Réponses: 5
    Dernier message: 18/03/2009, 10h01
  5. Réponses: 7
    Dernier message: 10/02/2008, 11h56

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