È possibile avere qualcosa come AttributeUsage per limitare l'uso di un attributo a una classe specifica (non solo AttributeTargets.Class - che sarebbe una qualsiasi classe)?C# AttributeUsage per classe specifica
risposta
No. Non c'è nulla nel quadro che farebbe questo.
Tuttavia, il codice che utilizza l'attributo in questione può sempre verificare che il tipo di classe sia la classe specifica (o una delle sue sottoclassi).
Gli attributi, da soli, non fanno nulla, quindi questo dovrebbe avere lo stesso effetto.
Rendi accessibili tutti i dati nell'attributo solo da un metodo statico pubblico che accetta la classe desiderata e controlla se ha l'attributo specificato.
Un modo per ottenere ciò, se si ha accesso alla classe specifica, è descritto da Marc Gravel qui: http://marcgravell.blogspot.com/2009/06/restricting-attribute-usage.html. Fondamentalmente si implementa l'attributo come classe protetta del tipo specifico. Quindi può essere utilizzato solo da quel tipo.
- 1. multipli AttributeTargets in AttributeUsage
- 2. Disabilitare tutti gli avvisi stylecop per una classe C# specifica
- 3. utilizzando la classe specifica set_new_handler
- 4. Classe specifica nuovo/Cancella
- 5. Come rilevare e asserire l'ereditarietà virtuale per una classe specifica?
- 6. listview C# ordinamento per colonna specifica
- 7. C#: Conversione Classe Base per Bambini Classe
- 8. Honoring of AttributeUsage sui tipi di attributi derivati
- 9. Jquery carico selezionare una specifica classe
- 10. esportazione Classe C++ per duktape
- 11. LD_PRELOAD per metodi classe C++
- 12. Opzione/Forse classe per C++
- 13. C# SaveFileDialog nella cartella specifica
- 14. Trova classe specifica su più in jQuery
- 15. CSS primo figlio di classe specifica
- 16. : hover ma: non su una classe specifica
- 17. C++: Qual è la specifica del formato printf() per "float"?
- 18. un modo in C++ per nascondere una funzione specifica
- 19. refactoring classe astratta in C#
- 20. LuaBind: come associare un'istanza di classe specifica a Lua?
- 21. come impostare una specifica classe css su un widget in gtk3? (c)
- 22. Forza dimensione specifica della montatura in C
- 23. Compilare un programma C con un'architettura specifica
- 24. Dov'è già la specifica C# aggiornata?
- 25. Puntatore C++ di dimensione bit specifica
- 26. Colore testo console specifica RGB C++
- 27. costruttore di classe C++ per array
- 28. Funzione di stampa per classe C++
- 29. Classe C++ non è di per sé
- 30. Sintassi C++ per classe di eccezione personalizzata