Если к элементу применено несколько атрибутов, например,
[Foo]
[Bar]
void Baz() { ... }
Тогда есть ли какие-либо гарантии со стороны спецификаций CLR / .NET относительно того, в каком порядке они будут извлекаться при отражении (например, Attribute.GetCustomAttributes
)? Документация по этим методам не делает их явными, и, хотя кажется, что они возвращаются в том порядке, в котором они применяются, я не хочу полагаться на недокументированное поведение, так как это просто вызывает проблемы.
Что касается того, почему это может быть важно, представьте, что атрибуты используются для указания того, что метод должен иметь серию перехватчиков, которые должны выполняться в определенном порядке.