Permettre à un Attribut personnalisé uniquement sur le type spécifique

Est-il un moyen de forcer le compilateur à restreindre l'utilisation d'un attribut personnalisé à être utilisé uniquement sur les propriété de type int, short, string (tous les types primitifs)?

semblable à la AttributeUsageAttribute's ValidOn-AttributeTargets énumération.

  • Non, ce n'est pas possible. Le mieux que vous puissiez faire est d'écrire un test unitaire qui utilise la réflexion et valide son utilisation. Mais rien dans le compilateur va le faire.
  • aussi, vous ne pouvez pas ajouter des attributs de classes en dehors de votre contrôle, en tout cas - de sorte que vous ne pouvez pas ajouter des attributs à int ou string. Voulez-vous dire "uniquement pour les propriétés qui sont int ou string" ? si oui, la réponse est toujours "non" ;p
  • bien sûr je ment int, string propriétés et de ne pas modifier la classe int lui-même, Mais je vais modifier. merci pour la réponse.
  • Des bons, des solutions concrètes ont été donnés sur ce double, qui a demandé à seulement 15 jours plus tard: stackoverflow.com/questions/8574275/...
InformationsquelleAutor gdoron | 2011-12-05