Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Abonnements

Parcourir par tags

Tous les tags » C# » Linq   (RSS)
N’utilisez Single que quand c’est nécessaire sinon utilisez First !
J’ai vu plusieurs développeurs utiliser la méthode Single quand ils voulaient récupérer un élément alors qu’ils savaient que le Single ne retournerait qu’un seul élément. C’est mal !!! Dans ce cas, il faut utiliser la méthode First. Le but de la méthode Lire la suite...

Posté le jeudi 25 février 2010 07:23 par Matthieu MEZIL | 0 commentaire(s)

Classé sous : , ,

ALT .NET Demo
Mercredi dernier, j'ai animé une session pour la communauté ALT .NET sur Entity Framework. Lors de cette session, j'ai notamment fait une demo avec du WCF, de l'Entity Framework avec du POCO et un pseudo provider LINQ côté client . Ce provider est particulièrement Lire la suite...

Posté le mardi 28 avril 2009 22:38 par Matthieu MEZIL | 0 commentaire(s)

Classé sous : , , , , ,

Vilain bug avec IQueryable et la syntaxe yield : System.BadImageFormatException "An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)"
J'ai identifié un vilain bug quand on mélange les IQueryable et la syntaxe yield. J'avais réalisé un exemple avec LINQ To SQL, un autre avec LINQ To Entities et enfin un autre avec IEnumerable<object> (qui lui ne plante pas). Diego a transformé Lire la suite...

Posté le mardi 14 octobre 2008 07:48 par Matthieu MEZIL | 5 commentaire(s)

Classé sous : , , ,

Quizz 10 - Où placer le Where
Ce quizz est un peu spécial car il est inclut dans "un vrai post". Où placer le where ? Cette question a l'air très simple mais ce n'est pourtant pas si facile que ça. Reprenons la solution que je propose sur le dernier quizz de Mitsu : names.Select(n Lire la suite...

Posté le lundi 18 août 2008 21:18 par Matthieu MEZIL | 6 commentaire(s)

Classé sous : , , ,

Quizz 9
Pour une fois je ne vais rien vous donner à coder. Juste une question concernant la réponse que je donne pour le Quizz 8 : static IEnumerable < int > CommonBegining( IEnumerable < IEnumerable < int >> values) { return values.Aggregate((v1, Lire la suite...

Posté le jeudi 14 août 2008 13:01 par Matthieu MEZIL | 6 commentaire(s)

Classé sous : , , ,

Quizz 8
Comme je l'ai dit dans les commentaires du Quizz 7 , l'idée maintenant est de faire l'équivalent de ceci : values.Aggregate((v1, v2) => v1.TakeWhile((v, index) => v2.Count() > index && v == v2.ElementAt(index))); en utilisant un seul Lire la suite...

Posté le mercredi 13 août 2008 13:05 par Matthieu MEZIL | 9 commentaire(s)

Classé sous : , , ,

Quizz 7
Dans mon Quizz précédent , je propose la solution suivante : values.Aggregate((v1, v2) => v1.TakeWhile((v, index) => v2.Count() > index && v == v2.ElementAt(index))); Simon n'a pas dût encore lire mon commentaire sinon il m'aurait déjà Lire la suite...

Posté le mercredi 13 août 2008 08:05 par Matthieu MEZIL | 5 commentaire(s)

Classé sous : , , ,

Quizz 6
L'idée ici est de partir d'un IEnumerable<IEnumerable<T>> et de récupérer le début commun à tous les sous-IEnumerable : class Program { static void Main( string [] args) { int [][] values = { new int [] { 1, 2, 3, 4, 5 }, new int [] { 1, 2, Lire la suite...

Posté le mardi 12 août 2008 13:06 par Matthieu MEZIL | 18 commentaire(s)

Classé sous : , , ,

Quizz 5 : de plus en plus débile mes quizz :-)
Reprenons mon quizz 4 : En C#3, comment faire une moyenne sans la méthode Average ni la méthode Sum ? static void Main( string [] args) { int [] values = { 1, 2, 3 }; Console .WriteLine(Average(values)); } static int Average( IEnumerable < int > Lire la suite...

Posté le mardi 12 août 2008 07:44 par Matthieu MEZIL | 2 commentaire(s)

Classé sous : , , ,

Quizz 4
En C#3, comment faire une moyenne sans la méthode Average ni la méthode Sum ? static void Main( string [] args) { int [] values = { 1, 2, 3 }; Console .WriteLine(Average(values)); } static int Average( IEnumerable < int > values) { // Just code Lire la suite...

Posté le lundi 11 août 2008 23:01 par Matthieu MEZIL | 5 commentaire(s)

Classé sous : , , ,

Quizz 3
L'idée ici est de faire du C#3, pas du C#2, tant pis pour la perf, ce n'est pas le but ici. On a un IEnuemrable<int> et on veut récupérer pour chaque valeur de notre IEnumerable le nombre maximum d'occurences succésives. Le code suivant : static Lire la suite...

Posté le lundi 11 août 2008 13:32 par Matthieu MEZIL | 5 commentaire(s)

Classé sous : , , ,

Quizz 2
Dans le quizz précédent , ma méthode GetElementsInAllGroups retourne un IEnumerable<T>. Cependant dans certain cas je voudrais retourner un IEnumerable vide. Pour cela, j'avais utilisé un foreach couplé avec un yield return, Mitsu a eu l'idée astucieuse Lire la suite...

Posté le samedi 9 août 2008 12:28 par Matthieu MEZIL | 2 commentaire(s)

Classé sous : , , ,

Comme Mitsu :-)
Vu que j'ai un peu pitié de Simon qui n'a toujours pas eu le temps de répondre à un quizz de Mitsu , j'ai décidé de proposer moi-même des quizz. Donc voici le premier. L'idée est de partir d'un IEnumerable<IEnumerable<T>> afin de récupérer Lire la suite...

Posté le vendredi 8 août 2008 13:10 par Matthieu MEZIL | 16 commentaire(s)

Classé sous : , , ,

Mitsu reprend ses quizz
Bonne nouvelle, Tout comme l'été dernier, Mitsu reprend ses quizz ! Bon j'espère que les prochains vont être un peu plus dur que le premier parce que là c'est vraiment du niveau 100 Enjoy Lire la suite...

Posté le mercredi 6 août 2008 13:25 par Matthieu MEZIL | 0 commentaire(s)

Classé sous : , , ,

Dinesh Kularni : LINQ To SQL tips next
J'avais blogué sur les 5 premières astuces de Dinesh Kularni . Voici les 3 suivants : LINQ to SQL Tips 6- How to refresh given DataContext won't stomp on your objects LINQ to SQL Tips 7- Minimal update when you don't want optimistic concurrency check Lire la suite...

Posté le vendredi 13 juin 2008 07:57 par Matthieu MEZIL | 0 commentaire(s)

Classé sous : , , ,

Dinesh Kularni : LINQ To SQL tips
Dinesh Kularni a publié depuis novembre 5 astuces sur LINQ To SQL : LINQ to SQL Tips 1: how to map an enum LINQ to SQL Tips 2: how to use common base class for all entities LINQ to SQL Tips 3: Deferred (lazy) or eager loading of related objects with stored Lire la suite...

Posté le lundi 19 mai 2008 23:16 par Matthieu MEZIL | 0 commentaire(s)

Classé sous : , , ,

LINQ To SQL Table -> DataTable, génération de code à la volée, V3
Suite à la nouvelle remarque de Jean-Baptiste , mon code devient finalement ceci : namespace ConsoleApplication81 { class Program { static void Main( string [] args) { using ( var context = new DataClasses1DataContext ()) { var dt = LinqTableToDataTableHelper Lire la suite...

Posté le lundi 14 avril 2008 17:49 par Matthieu MEZIL | 0 commentaire(s)

Classé sous : , , , ,

LINQ To SQL Table -> DataTable, génération de code à la volée, V2
C'est pas parce que je suis au MVP Summit que ça va m'empêcher de coder la nuit. J'avais précédemment blogué sur la génération de code à la volée qui permettait de convertir une Table LINQ To SQL en DataTable . Suite à la remarque de Jean-Baptiste le Lire la suite...

Posté le lundi 14 avril 2008 09:00 par Matthieu MEZIL | 5 commentaire(s)

Classé sous : , , , ,

Compiled Query performance
Une requête LINQ To SQL ou LINQ To Entities est traduite en un Expression Tree qui va ensuite être optimisé puis tarduit à son tour en SQL. Le fait d'utiliser des CompiledQueries à la place de requêtes LINQ classique fait qu'une fois que votre requête Lire la suite...

Posté le mercredi 2 avril 2008 17:00 par Matthieu MEZIL | 1 commentaire(s)

Classé sous : , , , , ,

Génération de code à la volée
J'ai récemment eu la question suivante : comment, à partir d'une System.Linq.Table<T> générer une DataTable. Ma réponse a tout de suite était : par reflection. Le problème de la reflection c'est que c'est long. Du coup la meilleure façon d'optimiser Lire la suite...

Posté le lundi 31 mars 2008 03:22 par Matthieu MEZIL | 1 commentaire(s)

Classé sous : , , , ,

Plus de Messages Page suivante »


Les 10 derniers blogs postés

- [SharePoint] Les sessions TechDays 2012… par Le blog de Patrick [MVP SharePoint] le il y a 3 heures et 29 minutes

- TechDays Paris 2012 : Session pleinière jour 3 par Blog Technique de Romelard Fabrice le 02-09-2012, 11:01

- Mishra Reader : un lecteur RSS très Zune Style en Open Source ! par Cyril Sansus le 02-09-2012, 08:28

- [framework 4] Les Tasks et le Thread UI par Fathi Bellahcene le 02-09-2012, 00:33

- Workflow Foundation 3 a un pied dans la tombe par Blog de Jérémy Jeanson le 02-08-2012, 22:15

- TechDays Paris 2012 : Nouvelles tendances du poste de travail - Bring Your own PC par Blog Technique de Romelard Fabrice le 02-08-2012, 19:42

- TechDays Paris 2012 : System Center Service Manager 2012 Vue d’ensemble par Blog Technique de Romelard Fabrice le 02-08-2012, 17:32

- TechDays Paris 2012 : Pleinière second jour par Blog Technique de Romelard Fabrice le 02-08-2012, 16:23

- TechDays Paris 2012 : Retour d'expérience sur la mise en place d'un Cloud Privé par Blog Technique de Romelard Fabrice le 02-08-2012, 16:04

- TechDays Paris 2012 : Comment SharePoint a sauvé mes TechDays par Blog Technique de Romelard Fabrice le 02-07-2012, 23:59