J'ai créé une interface avec certaines propriétés.
Si l'interface n'existait pas, toutes les propriétés de l'objet de classe seraient définies sur
{ get; private set; }
Cependant, cela n'est pas autorisé lors de l'utilisation d'une interface, peut-on y parvenir et si oui, comment?
c#
asp.net
interface
getter-setter
dotnetnoob
la source
la source
L'interface définit l'API publique. Si l'API publique ne contient que le getter, vous ne définissez que le getter dans l'interface:
Le setter privé ne fait pas partie de l'API publique (comme tout autre membre privé), vous ne pouvez donc pas le définir dans l'interface. Mais vous êtes libre d'ajouter des membres (privés) à l'implémentation de l'interface. En fait, peu importe si le setter sera implémenté comme public ou privé, ou s'il y aura setter:
Setter ne fait pas partie de l'interface, il ne peut donc pas être appelé via votre interface:
la source