August 2008 - Posts
En voici un un peu plus dur. J'ai un ensemble de villes 'cities' et une liste de groupes de villes. J'aimerai afficher l'ensemble du contenu de 'cities' mais en faisant apparaître les groupes à la place des villes si ceux-ci y sont présents. Les villes
Read More...
Commençons par une réponse 'fonctionnelle'. if (query.Count() == 0 ) { } nous recherchons ici à déterminer si query est une séquence non nulle, autrement dit, si query renvoie des éléments. Techniquement '.Count() == 0' répond à la question mais est assez
Read More...
Allez, une rapide pour la fin de journée. Le truc est simple mais il est important de toujours l'avoir en tête lorsque l'on fait du Linq. La requête suivante est correcte mais peut-être optimisée. Comment ? if (query.Count() == 0 ) { // ... } Dans le
Read More...
Depuis .Net 3.5, C# (3.0 donc) propose une syntaxe facilitant l'initialisation de collections. On peut ainsi écrire: var list = new List < string > { " Paris " , " Londres " }; Imaginons maintenant que l'on veuille initialiser
Read More...
Linq to Sql utilise des informations de mapping pour générer les requêtes Sql. Comment récupérer ces informations de mapping pour notre propre usage ? Imaginons un scénario simple pour générer dynamiquement les colonnes d'une grille (en mettant des combos
Read More...
Linq to Sql est capable de générer le 'in' Sql. Cela se traduit en Linq par l'usage de la méthode .Contains(). L'exemple ci-dessous compile mais pourtant plante à l'exécution. Pourquoi donc ? var db = new NorthwindDataContext(); var cq = CompiledQuery.Compile((NorthwindDataContext
Read More...
Rappelons un point important qu'il est toujours bon d'avoir en tête lorsque l'on fait du Linq to Object . Une majorité des opérations de Linq déroulent l'énumération source et exploitent chaque élément un par un pour effectuer leur traitement. Aucune
Read More...
Réponse au quizz précédent. Ce quizz va me permettre de rappeler plusieurs points intéressants: - Jouer avec les chaînes de caractères est toujours un jeu dangereux d'un point de vue de la performance. N'oublions pas qu'en .Net une chaîne est une collection
Read More...
Voici un cinquième quizz pour le week-end. Soupçonnant une semaine de 15 août un peu désertée je reprendrai plus activement les quizzs la semaine prochaine. Je vous propose ici de rechercher la liste distincte des caractères présents dans l'ensemble des
Read More...
Dans le langage Microsoft, les services pack offrent généralement un ensemble de correctifs à un produit. Ce service pack est bien plus riche, ne vous y trompez pas ! Vous y trouverez des améliorations mais également de nouveaux produits complets. Quelques
Read More...
Un peu de Linq to Sql ! Le fonctionnel est simple, j'aimerais depuis toutes les catégories récupérer une liste d'éléments regroupant le nom de la catégorie ainsi qu'un dictionnaire des produits appartenants à cette catégorie. Ceci afin de pouvoir retrouver
Read More...
Imaginons un tableau quelconque à deux dimensions. J'aimerais tout simplement lister l'ensemble des données sous forme d'un simple vecteur en éliminant la seconde dimension. var values = new int [][] { new int [] { 1 , 2 , 3 }, new int [] { 4 , 5 , 6
Read More...
Voici la réponse au précédent Quizz . Pour la version simple: var q = from v1 in values1 from v2 in values2 select v1 + v2; En effet, comme un serveur de base de données, Linq to object fait un produit cartésien lorsque l'on définit plusieurs source de
Read More...
France Televisions vient de sortir un player Silverlight qui permet d’avoir 12 chaines TV et de suivre en direct sa discipline préférée mais aussi ce qui passera sur les chaines publiques France 2, France 3 et France 4. http://sport.francetv.fr/jeux-olympiques-2008/
Read More...
Encore un petit assez simple mais attention, bonus pour celui qui l'écrit en C# classique sans utiliser la 'sugar syntax' de Linq. Je voudrais lister l'ensemble des associations possibles avec les éléments de ces deux tableaux. var values1 = new string
Read More...
Pas sûr d'en faire 12 comme l'année dernière mais il faut bien se lancer, alors allons-y ! Un petit facile pour s'échauffer: var values = new string [] { " 723 " , " 23 " , " 345 " , " 3453 " , " 006 "
Read More...