Comprendre la différence entre new et override en C#

Je reviens parfois à la documentation de base Savoir quand utiliser les mots clés override et new quand j’ai un doute car cette subtilité du langage peut être source d’erreur très compliquée à débusquer. Pour résumé avec deux phrases (prenez votre souffle) : override est obligatoirement utilisé sur une méthode abstract et doit être utilisé (sinon warning du compilateur) sur une méthode virtual, il indique au compilateur d’utiliser la dernière méthode définie (pas de différence sur les types utilisés). ...

2020-02-17 · 3 min🇫🇷

Inline des variables out à partir du C# 7

Si vous recevez des avertissements de variable out qui peuvent être inline, vous êtes en C# 7 ou plus. Depuis cette version, il n’est plus nécessaire de déclarer les variables out avant les appels de méthodes. Vous pouvez les déclarer inline, c’est à dire à la volée proche de la déclaration out. Elle peut être typée ou implicite avec var. // Avant le C# 7 TypeVariable resultat; MethodeAvecOut(out resultat); // A partir du C# 7 MethodeAvecOut(out TypeVariable resultat); MethodeAvecOut(out var resultat); À voir avec vos équipes si vous aimez lire vos types ou si vous laissez votre IDE préféré vous l’afficher à la volée.

2020-02-04 · 1 min🇫🇷

Comment lancer un débogueur par programmation en C# ?

Si vous faites de la programmation avec des threads, il vous est déjà arrivé de vouloir attacher un débogueur à un process déjà lancé. C’est parfois trop long à faire à la main, le traitement est déjà fini, etc. Heureusement la CLR sait interpréter certaines fonctions bien pratique ! Vous pouvez appeler la méthode magique Launch() : System.Diagnostics.Debugger.Launch(); Celle-ci lancera un débogueur pour vous. Si vous avez plusieurs versions de Visual Studio installées, on vous demandera même la version que vous voulez utiliser. ...

2020-01-30 · 1 min🇫🇷