Ich habe etwas von meinem C# -Code mit einem externen Tool generiert. Jede generierte Klasse hat ein Attribut GeneratedCodeAttribute. Warum erstellt mein Generator dieses Attribut?Was ist der Nutzen des Attributs GeneratedCodeAttribute in C#?
Antwort
Dieses Attribut wurde festgelegt, weil dieser Code vom Tool generiert wird, nicht von Menschen :) Was nützt es, fragen Sie? MSDN sagt uns:
Die GeneratedCodeAttribute Klasse kann durch Code-Analyse-Tools zu identifizieren computergenerierten Code verwendet werden, und eine Analyse der Werkzeug und die Version des Tools auf Basis bereitzustellen, die erzeugt die Code.
Es wird höchstwahrscheinlich vom Generator verwendet, um die von ihm erstellten Elemente wiederzufinden, um beispielsweise Aktualisierungen durchzuführen. Vorsicht, wenn Sie generierten Code ändern: Abhängig vom Tool-Verhalten können Sie Ihre Änderungen bei einem weiteren Update verlieren.
Ich bezweifle, weil normalerweise generierter Code und normaler Code nicht in der gleichen Datei gemischt sind. – Andrey
Eine mögliche Verwendung besteht darin, dass einige Coverage-Tools Code basierend auf angegebenen Attributen überspringen können. Sie können NCover anweisen, Code mit diesem Attribut zu ignorieren.
Der erste Link ist seine Dokumentation und der zweite Link ist eine detaillierte Beschreibung dessen, wofür das ist, warum Code-Generatoren es erzeugen und wie Code-Analysatoren es verwenden.
http://msdn.microsoft.com/en-us/library/system.codedom.compiler.generatedcodeattribute.aspx
und
Ist das Ihre Frage beantworten?
LMBTFY - lassen Sie mich Bing, dass für Sie –
Original-Link zum Blog-Artikel ist kaputt. Derzeit ist es https://blogs.msdn.microsoft.com/codeanalysis/2007/04/27/correct-usage-of-the-compilergeneratedattribute-and-the-generatedcodeattribute/ – bvgheluwe
- 1. Was ist der Zweck des Tag-Attributs von NSMenuItem?
- 2. Was ist der Verwendungszweck des verwendeten GCC-Attributs?
- 3. Was ist der praktische Nutzen von System.Transactions?
- 4. Was ist der Nutzen von Boost Polygon?
- 5. Was ist der Nutzen von `enable_shared_from_this`?
- 6. der Indexwert des Attributs
- 7. Was ist der praktische Nutzen der geschützten Vererbung?
- 8. Was ist die Standarddauer des asp.net MVC OutputCache-Attributs?
- 9. Was ist der wahre Nutzen von make and ant?
- 10. Was ist der Zweck des Label-Attributs in der JSF-Befehlsschaltfläche?
- 11. Verwenden des GCC-Attributs __unused mit Objective-C
- 12. Was ist der Nutzen öffentlicher Konstruktoren in abstrakten Klassen in C#?
- 13. Was ist der Zweck des Attributs `name` in einem Checkbox-Eingabeelement?
- 14. Was ist der Nutzen von Json mit Grails?
- 15. Was ist der beste Weg, um REST-Webdienste zu nutzen?
- 16. Was den Nutzen von version.rb in Ruby Juwel ist
- 17. Ändern des Win64-Attributs der Komponente in der benutzerdefinierten Aktion
- 18. Zweck des Attributs 'requirePermission' (web.config)
- 19. Verwendung des Standby-Attributs des Objektelements
- 20. Was ist der% n Formatbezeichner in C?
- 21. Name des CoreData-NSPredicates-Attributs
- 22. Wert des Attributs des Typs SDO_GEOMETRY anzeigen
- 23. Was ist der Anfangswert des dynamischen Speichers
- 24. Was ist der Punkt des Gusses?
- 25. Was ist der Rückgabetyp des Zuweisungsoperators?
- 26. NSPredicate PrädikatWithFormat Übergabe in Name des Attributs
- 27. Verwendung des benutzerdefinierten Attributs erzwingen
- 28. Erhalten Wert des benutzerdefinierten Attributs
- 29. Was ist der Sinn des NOT-Operators?
- 30. Was ist ** in C++?
NCover kann eigentlich gelernt werden, dieses Attribut bei der Berechnung der Testabdeckung zu berücksichtigen. –
ja und das passt in die Definition, NCover ist "Code-Analyse-Tools" – Andrey