mars
2007
Si le sujet debugger vous intéresse, je vous conseille toujours d’aller visionner les webcasts de Mitch que j’avais référencé à la fin de mon article sur le databinding avancé, cependant ce n’est pas de ça que je veux parler aujourd’hui. J’avais décompilé le code de la classe TextBox avec Reflector et FileDisassembler. (Vous trouverez sur ce site plusieurs addins Reflector.) J’ai une classe MyTextBox qui hérite de TextBox. L’exécution était arrêté sur un point d’arrêt […]
mars
2007
Quand on veut changer restreindre le type de retour dans la surcharge d’une métode (ou propriété (readonly)) ou dans le cas d’une implémentation d’une interface, ce n’est pas possible. C’est bien dommage mais c’est comme ça ! Prenons un exemple : interface I1 { List<I2> Test { get; } } interface I2 { } class C1 : I1 { private List<C2> _test; public List<C2> Test { […]
mars
2007
Avec Visual Studio 2003 (ou 2002), quand on créait une propriété, il fallait déclarer le champ puis la propriété. Avec Visual Studio 2005, les snippets et le refactoring nous permmettait de gagner du temps mais le code était toujours aussi long. En C# 3.0, on a la possibilité de réduire considérablement le code avec cette nouveauté. Il suffit de déclarer la propriété comme on le fait dans une interface et le compilateur génère le code […]
mars
2007
Si vous utilisez TFS, je vous conseille de récupérer Fissum. Mitch avait prévenu que la version 0.3 sortirait à la fin de la semaine, c’est chose faite. Vous pouvez la récupérer ici.
mars
2007
Quand on utilise la méthode GetCustomAttributes sur un MemberInfo, le type retourné est object[]. Cependant, cela peut être pénible quand on a précisé le type d’attribut dans les paramètres de GetCustomAttributes car il va falloir systèmatiquement caster le résultat de GetCustomAttributes afin de pouvoir utiliser des membres de notre attribut. Prenons un exemple : class Program { static void Main(string[] args) { TestAttribute[] attributes = (TestAttribute[])(typeof(Test).GetProperty("Toto").GetCustomAttributes(typeof(TestAttribute), true)); […]
février
2007
Je suis toujours surpris des différences entre VB et C#. Je conviens qu’il y a un historique VB qui explique certaines choses mais je reste étonné par le fait qu’il y ait aussi des différences sur les nouveautés. Je viens de découvrir que l’écriture des extension methods faisait partie de ces différences. Pour les extension methods en VB, je vous conseille les liens suivants : http://blogs.msdn.com/vbteam/archive/2007/01/05/extension-methods-part-1.aspx http://blogs.msdn.com/vbteam/archive/2007/01/11/extension-methods-part-2.aspx http://blogs.msdn.com/vbteam/archive/2007/01/18/extension-methods-part-3.aspx http://blogs.msdn.com/vbteam/archive/2007/01/24/extension-methods-and-late-binding-extension-methods-part-4.aspx http://blogs.msdn.com/vbteam/archive/2007/02/15/extension-methods-and-generics-extension-methods-part-5.aspx
février
2007
J’ai mis à jour mon article sur le DataBinding avancé afin de rajouter la gestion des exceptions dans le set des propriétés bindés. Je me suis trouvé confronté au problème aujourd’hui et j’ai pensé que le RealProxy pourrait bien m’aider et effectivement alors autant vous faire partager l’information. Sinon, j’avais mis des petits codes bien sympa ici et là. Comme je ne les référence pas ailleurs, autant les mettre sur mon blog. Le premier est […]
février
2007
Alan a écrit un article particulièrement intéressant sur C# 3.0
février
2007
Please copy and distribute. Je relai une information trouvé sur ce blog.