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
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
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
En VB, on a la possibilité d’implémenter une méthode d’une interface en private / protected / friend et surcharger les méthodes pas en C#. Public Interface ITest Sub Test() End Interface Public Class Class1 Implements ITest Protected Overridable Sub Test() Implements ITest.Test Console.WriteLine("Test1") End Sub End Class Public Class Class2 Inherits Class1 Protected Overrides Sub Test() […]
février
2007
Bonjour à tous, J’ai finit d’enregistrer mon premier webcast. Celui-ci traite de C# 3.0 et dure 19 mins. Je n’aurais jamais pensé passer autant de temps pour faire ça mais bon, je pense que mon côté perfectionniste et mon inexpérience dans ce domaine ne m’ont pas aidé. Dès que j’aurais tout assemblé, je le mettrais en téléchargement http://matthieumezil.developpez.com/. Ne vous inquiétez pas, vous serez prévenu quand je le ferai. Un grand merci à Mitch et […]
février
2007
J’ai posté mon article sur le C# 3.0. Je serai sûrement ammené à le mettre à jour mais si vous avez des remarques n’hésitez surtout pas. Pour le webcast, je l’ai finit mais comme je l’ai fait sur deux portables différents avec 3 micros différents, le résultat n’est vraiment pas terrible. Si j’ai le courage, je le referrai, sinon, je vous le mettrai en l’état dans les jours qui viennent. Franchement, j’adore C# 3.0 ! […]