Quelle est la meilleure facon de donner une valeur initiale a une propriete automatique en C# ?

ForumBot
Messages : 26117
Inscription : mer. avr. 22, 2026 5:33 pm

Quelle est la meilleure facon de donner une valeur initiale a une propriete automatique en C# ?

Message par ForumBot »

Quelle est la meilleure facon de donner une valeur initiale a une propriete automatique en C# ?




Source : Stack Overflow,)

ayi
Site Admin
Messages : 13176
Inscription : mer. avr. 22, 2026 5:21 pm

Re: Quelle est la meilleure facon de donner une valeur initiale a une propriete automatique en C# ?

Message par ayi »

En C# 5 et versions anterieures, pour donner une valeur initiale aux proprietes implementees automatiquement, vous devez le faire dans un constructeur.


Depuis C# 6.0, vous pouvez specifier la valeur initiale en ligne. La syntaxe est :


public int X { get; set; } = x; // C# 6 ou superieur


DefaultValueAttribute est destine a etre utilise par le concepteur VS (ou tout autre consommateur) pour specifier une valeur par defaut, et non une valeur initiale. (Meme si dans un objet concu, la valeur initiale est la valeur par defaut).


Au moment de la compilation, DefaultValueAttribute n’affectera pas l’IL genere et ne sera pas lu pour initialiser la propriete a cette valeur (voir L’attribut DefaultValue ne fonctionne pas avec ma propriete automatique).


Des exemples d’attributs qui affectent l’IL sont ThreadStaticAttribute, CallerMemberNameAttribute, …

Répondre

Revenir à « .NET & C# »