Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Linq - récupérer plusieurs table pour un datasource [ Base de données / SQL Server ] (wally88)

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é 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

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 1,108 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.