Tour accès aux données: à mi-parcourt
Bonjour à tous,
Le tour est lancé depuis 15j et nous avons réussi tant bien que mal à traverser la France en slalomant entre les grèves de la Sncf et d'Air France :p.
Malgré ces quelques difficultés de parcours, le tour est bel et bien lancé. Strasbourg, Lille, Nantes et Toulouse furent de belles sessions bien remplies avec entre 50 et 70 participants.
Le tour reprendra après les vacances scolaires (et le TechEd) avec Lyon, Aix et Paris, villes pour lesquelles il est encore temps de s'inscrire (https://msdn2.microsoft.com/fr-fr/data/bb743261.aspx).
Vous pouvez évidemment profiter de ce billet pour poser vos questions ou donner votre avis pour ceux qui ont déjà participé !
A très bientôt,
Mitsu
Comments
Anonymous
October 26, 2007
Le tour c'est très bien passé à Nantes. Et surtout cela m’a permis de voir clairement l'intérêt de Linq et de commencer à faire des essais grâce aux exemples très bien expliqué de Mitsu. Merci encore pour cette session très passionnante.Anonymous
October 29, 2007
The comment has been removedAnonymous
October 30, 2007
Trop fort ce Mitsu :-) Philippe A. : Pour Oracle, il faut utiliser LINQ To Entities. Pour les extension methods, "c’est un peu déroutant, car il faut absolument faire un using du namespace dans lequel on a mis les méthodes d’extension pour y avoir accès." : c'est pourquoi il est conseillé d'utiliser le même namespace que la classe étendue. Vivement le 28 novembre à Paris ! :DAnonymous
October 31, 2007
Matthieu : il est conseillé d'utiliser le même namespace que la classe étendue ! >>> Oui enfin si tu étend l'ensemble des classes qui implémentent une interface !! ton interface ou IEnumerable etc .... tu fait comment ? Je préfere bien structurer mes packages selon leurs roles dans mon projet. Et de toute facon si tu veux utiliser les extension de linq sur beaucoup d'objets du framework, il faut que tu face un using System.Linq;
Yes pour le 28, y aura t'il beaucoup de nantais, histoire de causer un peu de notre belle région !
Anonymous
November 03, 2007
Salut Mitsu ! Où peut on accéder au exemples et aux slides de ta présentation ?Anonymous
November 21, 2007
Salut Mitsu ! J'étais à Lyon le 15 novembre, et ta présentation était vraiment sympa et très enrichissante. J'ai été sidéré par ce qu'apporte LinqToSQL par rapport à une utilisation du SQL en chaine de caractères.... (eh oui je suis encore un vieux de la vieille et je code en vc6....) Etant donné le gouffre qu'il y a entre ce que je sais faire sur mon environnement de dev et vs2008 avec linq, je n'ai pas pu tout noté... et je te demande où peut-on trouver les exemples et le powerpoint de votre présentation ?Anonymous
November 29, 2007
The comment has been removedAnonymous
November 30, 2007
Et bravo pour la dernière 1/2h où Mitsu nous a redéveloppé LINQ en live. Cela m'a rappellé la fac de math ou on attendait le moment ou le prof de math allait bloquer sur sa démonstration super compliquée et utiliser une anti-sèche l'air de rien. Mais non, pas d'anti-sèche pour Mitsu, bravo.Anonymous
November 30, 2007
Bonjour, J'ai assisté au tour des données à l'espace tete d'or à lyon. J'ai trouvé la présentation sur linqtosql très interessante. J'ai une question concernant la connexion à la base. Je suis apprenti un BTS d'informatique de gestion. Avant lorsque j'utilisais les ADO.net, j'avais une connectionstring, etc. Je me connectais à la base chargeai mon dataset ou faisait un executenonquery() et fermait la connexion et travaillait en mémoire avec le dataset. Avec linqtosql, il n'y a plus besoin de gérer la connexion à la base et de vider les objets ou variables utilisées par le linq? Merci Jocelyn PAYNEAUAnonymous
December 02, 2007
The comment has been removedAnonymous
December 05, 2007
Bonsoir, Je voudrais savoir si une fois que l'on a fait une requete linq du type : var qdom = from dom in cvdc.Domaines select dom; Comment pourrait-on récupérer les éléments d'un seul champ par exemple? Cela afin de binder sur une combobox. Actuelelemnt je fais : var domaines = CVHelper.getDomaines();//getDomaines() est la requete ci-dessus List<String> lstDomaines = new List<string>(); foreach (Domaine dom in domaines) { lstDomaines.Add(dom.description); } this.cbxDomaine.DataSource = lstDomaines; this.cbxDomaine.DataBind(); MerciAnonymous
December 07, 2007
@Mitsu : Question de clients qui revient souvent et je ne trouve rien de précis : Linq to SQl et Linq to Entites supportent-ils maintenant (vs2008) Oracle ? @Jocelyn: c'est très facile : var qdom = from dom in cvdc.Domaines select dom.description; tout simplement :-)Anonymous
December 10, 2007
@Jocelin: var qdom = from dom in cvdc.Domaines select dom.description; this.cbxDomaine.DataSource = qdom; this.cbxDomaine.DataBind(); //tu es visiblement en Asp, donc tu peux binder directement la requête à la DataSource. Sinon pour remplir une liste tu peux faire simplement: qdom.ToList(). @Olivier: Linq to Sql ne supporte pas Oracle aujourd'hui. Le support d'Entity Data Model pour Oracle est en cours de développement. Nous attendons sa sortie post EDM (mi 2008) sans engagement sur la date dans le sens où ce n'est pas nous qui le développons.Anonymous
December 12, 2007
Hello, J'ai encore une question mais sur l'insertion cette fois-ci. J'ai un formulaire avec des textbox et des combobox. Pour les textbox pas de soucis puis que cela correpond à un champ texte dans ma table. Mais en fait pour les combobox, cela correspond à une clé étrangère dans ma table. Comment procéder?
- Lorsque je remplis ma combo, je bind sur le datafieldvalue les id de ma table et ensuite je fais : macléétrangère = this.combobox.selectedvalue
- je fais une requête qui me récupère l'id et ensuite je fais comme ci-dessus
- linq avec les entityref permet de résoudre cette question Merci Jocelyn
Anonymous
December 12, 2007
Je rajoute quelque chose a mon dernier message. J'ai remarqué que dans le fichier généré par le mapping il y a des méthodes partielles ajout modification et suppression pour chaque table de la base. Comment fais-on pour les modifier et les appeler? MerciAnonymous
December 12, 2007
Dans une classe partielle de même nom, il faut que tu implémente les méthodes qui ne sont que pour le moment définies dans le code généré. Elles seront alors tout simplement appelées par le code générée au lieu d'être ignorée à la compilation. Les webcats ne devraient pas tarder !!Anonymous
December 14, 2007
Il faut donc que je crée, par exemple, une classe CV.cs et dedans j'implémente les méthodes générées par le designer? JocelynAnonymous
December 16, 2007
Exactement. La classe CV doit être partielle et doit déjà exister (générée par le designer)Anonymous
February 25, 2008
Bonsoir, Je voudrais savoir comment faire un produit cartésien avec linq. Je n'ai qu'une seule table mots avec 4 mots dedans. En access, je fais cette requête : SELECT mots.mot, mots_1.mot, mots_2.mot FROM mots, mots AS mots_1, mots AS mots_2 et j'obtiens ce résultat : mots.mot mots_1.mot mots_2.mot mots_3.mot bonjour bonjour bonjour bonjour mainframe bonjour bonjour bonjour lan bonjour bonjour bonjour bobo bonjour bonjour bonjour Avec SqlServer, j'ai lu que c'est avec CrossJoin que l'on fait un produit cartésien. Mais lorsque je fais db.ExecuteQuery(marequete) je n'ai pas le résultat escompté J'aimerai obtenir le meme résultat sous sqlserver que avec access (ci-dessus) et le binder dans mon datagridview. En linq, il faut utiliser "join" comme pour une jointure "normale"? Je veux essayer de le faire avec sqlserver et linq parce que quand je passe par Access via mon application dot.net si je fais un produit cartésien avec plus de 4 enregistrements ca part dans les choux alors que a vif dans Access je peux faire un produit cartésien avec 20 mots (soit 20^20) en 5s. Merci de ton aide Jocelyn