Wenn mehrere Attribute auf ein Element angewendet werden, z.Hat die Reihenfolge der Attribute irgendwelche Garantien?
[Foo]
[Bar]
void Baz() { ... }
sind dann alle durch die CLR/.NET Spezifikation Garantien in Bezug auf welcher Reihenfolge werden sie durch Reflexion in wenn sie abgerufen werden abgerufen werden (z Attribute.GetCustomAttributes
)? Die Dokumentation für diese Methoden macht sie nicht explizit, und obwohl es so aussieht, als ob sie in der Reihenfolge zurückgegeben werden, in der sie angewendet werden, möchte ich mich nicht auf undokumentiertes Verhalten verlassen, da dies nur nach Ärger fragt.
Warum dies wichtig sein könnte, stellen Sie sich vor, dass die Attribute verwendet werden, um anzuzeigen, dass die Methode eine Reihe von Interzeptoren haben sollte, die in einer bestimmten Reihenfolge ausgeführt werden sollten.
Scheint ziemlich schlüssig - danke. Ich habe erwartet, dass ich ehrlich bin. –