begin process at 2012 02 14 03:51:43
  Trouver un code source :
 
dans
 
Accueil > Forum > 

ASP.NET

 > 

Base de données

 > 

SQL Server

 > 

Linq - récupérer plusieurs table pour un datasource


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Linq - récupérer plusieurs table pour un datasource

mercredi 5 novembre 2008 à 10:29:59 | Linq - récupérer plusieurs table pour un datasource

wally88

Membre Club
Bonjour,

J'essaie de récupérer des infos de mes tables "echange" et "contre"  avec comme requete :

var Query = from p in oAnnonce.contres join p2 in oAnnonce.echanges on p.con_ech_id equals p2.ech_id where p.con_ech_id == echid select p ,p2;
Table<contre> truc = oAnnonce.GetTable<contre>();

il me trouve pas les champs echange ce qui je pense est normal.
je peux alors rajouter Table<echange> truc= oAnnonce.GetTable<echange>();  mais comment concaténer les deux tables pour que ca me fasse ma source de donnée ?
Je pensais qu'avec le "join" ca se fesais tout seul et je ne toruve aucune doc sur l'utilisation de plusieurs tables.

Merci.
mercredi 5 novembre 2008 à 21:45:40 | Re : Linq - récupérer plusieurs table pour un datasource

nhervagault

Administrateur CodeS-SourceS
Réponse acceptée !
Salut
Une petite recherche donne
http://tiredblogger.wordpress.com/2007/07/11/table-joins-in-linq-good-bad-and-complexly-ugly/
http://dotnetthoughts.wordpress.com/2007/12/14/the-linq-jukebox-part-2-linq-joins/

Il y a peut etre un probleme de defer loading
http://blogs.microsoft.co.il/blogs/bursteg/archive/2007/10/06/linq-to-sql-deferred-loading-lazy-load.aspx


Normalement, tu n'as pas à utiliser Table<T> le contexte étant fortement typé tu n'as pas besoin de passer par là.



Quand tu auras trouvé la réponse n'oublie pas de l'indiquer.


jeudi 6 novembre 2008 à 10:33:39 | Re : Linq - récupérer plusieurs table pour un datasource

wally88

Membre Club
Réponse acceptée !
Bon apprement dans le select je ne peu tout recupérer d'un coup, il faut choisir les champs que l'on veut, en tout cas ca fonctionne bien comme ça.
Et il faut utiliser tout simplement le .ToList() de la requete pour que ca serve de datasource.

publicIList contreLire(int echid)
{
annonceDBDataContext oAnnonce = newannonceDBDataContext();
var Query = from p in oAnnonce.contres join p2 in oAnnonce.echanges on p.con_ech_id equals p2.ech_id where p.con_ech_id == echid selectnew {p.con_id  , p2.ech_type, p2.ech_montant, p2.ech_commentaire} ;
return Query.ToList();
}
Si quelqu'un sais si on peu se passer de mettre les champs un par un, ca m'arrangerais bien :)

Merci pour les liens nhervvagault ca m'a servi.
jeudi 6 novembre 2008 à 19:21:21 | Re : Linq - récupérer plusieurs table pour un datasource

nhervagault

Administrateur CodeS-SourceS
Réponse acceptée !
Attention,

Le toList() lance la requete sur la base

Il est preferable de le faire à la derniere minute.

public IEnumerable contreLire(int echid)
{
annonceDBDataContext oAnnonce = newannonceDBDataContext();
var Query = from p in oAnnonce.contres join p2 in oAnnonce.echanges on p.con_ech_id equals p2.ech_id where p.con_ech_id == echid selectnew {p.con_id  , p2.ech_type, p2.ech_montant, p2.ech_commentaire} ;
return Query;
}

De cette manière tu peux gagner en performance
surtout faire des cumulations de requetes

exemple :

var q1 = from ....

var q2 = from q1
               where c.city = 'paris'

gridview1.datasource = q2.ToList();

Dans ce cas il y a qu'une requete exécuétée sur la base de données
alors  qu'avec le tolist() du auras pas l'optimisation.

Bon coding
vendredi 7 novembre 2008 à 09:27:19 | Re : Linq - récupérer plusieurs table pour un datasource

wally88

Membre Club
Ah d'accord.

Merci pour ton aide et pour l'astuce.


Cette discussion est classée dans : récupérer, p2, tables, ech, oannonce


Répondre à ce message

Sujets en rapport avec ce message

Récupérer la liste des tables d'une base ACCESS en ASP .NET [ par vbtom ] Salut,Je recherche comment récupérer toutes les tables d'une base ACCESS XP(2002) en ASP .NetSI vous savez ca vous me sauver! ^^Merci d'avance!!++sPiR Récupérer le nom des variables passées en POST [ par Nabel ] Bonjour,J'aimerais savoir s'il est possible de récupérer le nom des variables, pas leur valeur, passées en POST. Je sais qu'en PHP on peut le faire gr ASP récupérer données [ par mickguib ] SVP, en ASP comment récupérer un à un les éléments d'une liste pas forcément sélectionnés ? ASP- comment récupérer les paramètres d'une fonction ? 8) [ par snooker ] J'ai récupéré la fonction sur la concatenation dans un article du site mais j'appelle la fonction mais je ne récupère rien... (bon c pas très clair to Récupérer le Temporary Internet File de Internet Explorer [ par twentyseven ] Bonjour,Est-il possible de réunpérer le Temporary Internet File de Internet Explorer du poste client ?Merci. explorateur de solution, projet asp [ par Benouille ] bonjour tous,je viens de récupérer un beau bébé sur les bras avec plus de 1500 pages asp, le dev précédent s'est sauvé sans transmettre les infos.je s Access / Dbase--> prob mise à jour [ par Darthsidious30 ] Salut!!!Voilà, j'ai une base de données access contenant des tables access et des liens vers des tables dbase. Le problème que j'ai c'est quand je veu Variable de variable [ par ChemicalStof ] Bonjour, j'ai un code qui génère des noms de variables. J'arrive à récupérer ces noms en utilisant une boucle, mais sous forme de texte. Or, j'aimerai Récupérer les données de ma bdd en csv [ par stella ] Pour sauver ma base de données, mon hébergeur me dit de faire un script qui récupère toutes les données pour les mettre dans un fichier csv que je pou Récupérer adresse mail outlook [ par ClayBarter ] Bonjour,J'ai réalisé un formulaire sous Internet Explorer en ASP.Cependant j'aimerais bien pouvoir récupérer l'adresse outlook de l'utilisateur (de ma


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,153 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales