février
2007
Après avoir eu les certifs 70-536 et 70-526 en ayant juste fait quelques tests sur certifdotnet.com, je vais devoir bosser les autres pour être MCPD Enterprise Applications Developer. En effet, je n’ai toujours pas fait de web (il faut vraiment que je m’y mette). J’avoue que quand on voit la taille des bouquins (en anglais en plus) de MSPress, ça fait peur ! Je vais quand même essayé de faire preuve de courage et de […]
février
2007
J’ai mis à jour mon article sur C# 3.0. J’ai utilisé les extension methods pour faire du pseudo multi-héritage. Pour le webcast, je vais essayer de le refaire ce week-end.
février
2007
J’ai (encore) mis à jour mon article sur le DataBinding avancé. J’ai rajouté dans mon code un exemple illustrant le formattage des données bindées. De plus, j’ai utilisé un peu plus de Réflexion et de Regex que dans la version précédente. J’ai également utilisé un opérateur pas très connu : le ??.
février
2007
Une fois de plus sur C# 3.0, je me suis uniquement concentré sur les extension methods dans ce deuxième webcast. N’hésitez pas à me donner votre avis.
février
2007
J’ai fait une découverte intéressante aujourd’hui en utilisant un StrongNameIdentityPermissionAttribute. Sur les attributs, afin d’éviter de devoir créer 50 constructeurs, on peut utiliser un équivalent des object initializer : public class Class1 { [MyAttribute(Test1 = "un")] public void Test1() { } [MyAttribute(Test2 = "deux")] public void Test2() { } [MyAttribute(Test1 = "un", Test2 = "deux")] […]
février
2007
Quand on duplique une déclaration, on a l’erreur de suite en VB alors qu’il faut compiler pour l’avoir en C#. En revanche, les erreurs de duplication de déclaration en VB sont surprenantes dans le sens où sur une propriété ou sur un champ, ce n’est pas le même qui a l’erreur : sur la propriété, c’est le premier alors que sur le champ, c’est le second. En C#, c’est tout le temps le premier :
février
2007
Les extension methods permettent d’écrire o.MyMethod() à la place de MyClass.MyMethod(o) dans (le cas d’une méthode static). En VB, il existe un intermédiaire : o.MyMethod(o). En fait, on a accès aux méthodes statiques du type de o directement (le code IL est bien MyClass.MyMethod(o)). Sous VS 2005, on a un warning quand on fait des choses comme ça. En effet, autant cela peut être pratique, autant cela peut permettre d’écrire du code assez surprenant. Voici […]
février
2007
Bien que je continue de préférer le C#, je dois reconnaître que Vincent et Akop m’ont fait découvrir deux choses intéressantes en VB qui n’existent à priori pas en C# : Les handles : Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click, Button2.Click DirectCast(sender, Button).Text = "ok" End Sub Dans ce cas et le click sur Button1 et le click sur Button2 affecteront « ok » au bouton cliqué. […]
février
2007
Contrairement à ce que dit msdn (http://msdn2.microsoft.com/fr-fr/library/system.enum.isdefined(VS.80).aspx), pour utiliser les méthodes static de la classe Enum, il ne faut pas faire « returnValue = Enum.IsDefined(enumType, value) », pour utiliser la méthode Isdefined, mais « [Enum].IsDefined(enumtype, value) ». Sur ce point Reflector aussi se plante. Heureusement ce n’est pas le cas de l’intellisence. J’ai envoyé un message pour le signaler.
février
2007
http://connect.microsoft.com/WindowsHomeServer