Je crée un certain nombre de compléments pour l'API Revit Structure. Chaque outil doit avoir une classe qui implémente l'interface IExternalCommand.Comment générer une erreur de compilation basée sur un attribut manquant en C#?
Dans la dernière version de Revit, pour votre outil pour vous travailler besoin d'avoir deux attributs de la classe qui implémente cette interface:
[régénération (RegenerationOption.Manual)] [Transaction (TransactionMode.Automatic) ]
Les valeurs entre parenthèses peuvent changer, mais il doit y avoir quelque chose. Souvent, je me retrouve à oublier de mettre les attributs, puis quand il s'agit de l'exécution, il se bloque. Est-il possible dans Visual Studio 2010 d'ajouter un avertissement ou une erreur du compilateur indiquant que si votre classe implémente cette interface, elle doit avoir ces deux attributs? J'ai resharper si cela aide.
Quelqu'un peut-il me diriger dans la bonne direction?
Très proche: http://stackoverflow.com/questions/19454/enforce-attribute-decoration-of-classes-methods – Aaronaught
sorte de, mais je suis après une erreur de compilation, ce code n'est pas sous test unitaire (pour diverses raisons) – RodH257