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.