Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Matthieu MEZIL

I love .Net

Abonnements

Actualités

Locations of visitors to this page English blog
Locations of visitors to this blog

Parcourir par tags

Tous les tags » C#   (RSS)
Avec le SP1, VS 2008 gère les types anonymes dans le debugguer
Comme l'explique Sreekar Choudhary avec le SP1 de VS 2008, on a maintenant la possibilité d'utiliser un type anonyme pour faire un cast ou même instancier des objets anonymes dans le debugguer Lire la suite...

Posté le samedi 14 juin 2008 08:09 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 : , , ,

reflector bug IL -> C#/VB/etc.
Je regardais le code de l'Entity Framework quand je suis tombé sur le code suivant : switch ( this .<>1__state) { case 3 : case 4 : break ; default : return ; try { } finally { this .<>m__Finally6(); } break ; } Cela me paraissant bizarre, Lire la suite...

Posté le mercredi 4 juin 2008 08:39 par Matthieu MEZIL | 2 commentaire(s)

Classé sous : , , , ,

Un bug dans Reflector avec les generics
Pour le code suivant : class A <T> { public A() { var b = new B (); } class B : A <T> { } } Reflector génère : class A <T> { public A() { var b = new B <T> (); } class B : A <T> { } } ce qui ne compile pas. Lire la suite...

Posté le mercredi 4 juin 2008 08:02 par Matthieu MEZIL | 2 commentaire(s)

Classé sous : , ,

Entity Cloner v2
J'avais fait une première version de l'EntityCloner . Je viens de finir une nouvelle version qui clone non plus l'entité seule mais le graphe à partir de l'entité. public static class EntityObjectExtension { public static T Clone<T>( this T entityObject) Lire la suite...

Posté le samedi 31 mai 2008 23:29 par Matthieu MEZIL | 0 commentaire(s)

Classé sous : , , , ,

Instance private and protected. Qu'en pensez-vous ?
Je pense que ça serait bien de rajouter les notions de privé à l'instance (en plus de privé à la classe) et idem pour protected. Dans beaucoup de cas, je voudrais inderdire ceci : class C1 { private int _test = 0; public int Test( C1 c1) { return c1._test; Lire la suite...

Posté le jeudi 22 mai 2008 19:33 par Matthieu MEZIL | 1 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 : , , ,

Eric Lippert et les génériques
Eric Lippert vient de publier un excellent post sur les génériques . L'idée est de pouvoir faire ceci : class Bar<T, U> where T : Foo<U> en ne passant qu'un seul paramètre générique : T, U étant déduit de T. Lire la suite...

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

Classé sous : ,

Parallel Framework, ce n'est pas magique mais ça peut être bien sympa à condition de bien l'utiliser
Comme plusieurs d'entre vous j'ai eu l'occasion de voir des démos assez bleuffantes sur le Parallel Framework (dont vous pouvez télécharger la CTP de décembre ici ), à commencer par celle lors de la pleinière du lundi matin aux techdays. Pour ceux qui Lire la suite...

Posté le mercredi 23 avril 2008 21:27 par Matthieu MEZIL | 3 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 : , , , ,

C# 3 : la correction d'un bug sur le compilateur qui peut empêcher votre code écrit en C# 2 de compiler
Comme l'explique Eric Lippert dans son dernier post , en C# 3.0, le code suivant ne compilera pas : public class Item { private Item _parent; public Item Parent { get { return _parent; } protected set { _parent = value ; } } } public class Bag : Item Lire la suite...

Posté le samedi 29 mars 2008 08:34 par Matthieu MEZIL | 0 commentaire(s)

Classé sous : ,

LINQ To SQL : DateDiff et Like
Ces méthodes SQL souvent utilisées, n'existent pas en .Net. De ce fait, on peut se compliquer la vie avec LINQ. LINQ To SQL est limité à SQL Server. Du coup, ces méthodes ont été développées en .Net pour LINQ To SQL : System.Data.Linq.SqlClient. SqlMethods Lire la suite...

Posté le vendredi 28 mars 2008 18:20 par Matthieu MEZIL | 1 commentaire(s)

Classé sous : , , , , ,

LINQ : une nouvelle façon de concevoir les algorithmes
Il y a plusieurs façon d'optimiser le code : Faire le code le plus rapide à l'exécution Faire le code le plus rapide à l'écriture Faire le code le plus lisible etc. Comme l'optimisation est donc une notion très relative, je ne vais pas m'en soucier dans Lire la suite...

Posté le vendredi 21 mars 2008 01:59 par Matthieu MEZIL | 0 commentaire(s)

Classé sous : , , , ,

Extended delegates
Avec les extension delegates, on peut faire un delegate sur les extension methods comme s'il s'agissait d'une méthode d'instance classique. Voici l'exemple fournit par Jon Skeet : static void Main( string [] args) { string [] x = { "a" , "b" , "c" }; Lire la suite...

Posté le lundi 17 mars 2008 08:16 par Matthieu MEZIL | 0 commentaire(s)

Classé sous : ,

LINQ : encore un quizz
Voici un petit quizz à faire de tête. Quel sera l'état de ma console à l'exécution de ce code? class Program { static void Main( string [] args) { XElement xml = new XElement ( "Customers" , new XElement ( "Customer" , new XAttribute ( "LN" , "A" ), new Lire la suite...

Posté le lundi 17 mars 2008 07:05 par Matthieu MEZIL | 5 commentaire(s)

Classé sous : , ,

C# 4 et automatic properties
Jon Skeet présente dans son dernier billet une future nouveauté qu'il aimerait bien voir dans C#4 : public string Line1 { get; initonly set; } Le principe est alors le suivant : la propriété ne pourra être initialisée de l'extérieur que via un object Lire la suite...

Posté le dimanche 16 mars 2008 08:59 par Matthieu MEZIL | 7 commentaire(s)

Classé sous : ,

Optimiser une requête LINQ : pas toujours une bonne idée
J'ai voulu optimiser requête LINQ suivante : var q2 = from c in context.Categories select new { c.CategoryName, SupplierContactName = ( from s in context.Suppliers let ProductCount = ( from p in s.Products where p.CategoryID == c.CategoryID select p).Count() Lire la suite...

Posté le jeudi 13 mars 2008 19:09 par Matthieu MEZIL | 0 commentaire(s)

Classé sous : , , , ,

Plus de Messages Page suivante »


Les 10 derniers blogs postés

- un Pacman en Silverlight 2b2 par Pierrick's Blog le il y a 5 heures et 31 minutes

- Une table -> deux entity types sans colonne discriminante en base, gestion des relations par Matthieu MEZIL le il y a 13 heures et 29 minutes

- ssdl view et TPT par Matthieu MEZIL le 07-05-2008, 02:04

- L'injection SQL n'est PAS un problème QUE pour les développeurs web ! par CoqBlog le 07-05-2008, 01:08

- Un outil pour réaliser des animations WPF basées sur des équations de Bézier par Perspective le 07-04-2008, 21:45

- Sandcastle et CodePlex : le verdict par CoqBlog le 07-04-2008, 20:53

- ssdl view et TPH par Matthieu MEZIL le 07-04-2008, 19:12

- Webcasts sur le Parallel Framework disponibles par Matthieu MEZIL le 07-04-2008, 17:26

- [Silverlight] - Comprendre et Débuter avec Silverlight par Danuz le 07-04-2008, 12:41

- SharePoint : Nouvel article sur l'exportation et Importation de sites SharePoint par Blog Technique de Romelard Fabrice le 07-04-2008, 01:00