Экземпляры атрибутов полностью независимы от типов / полей / свойств, которые они украшают; нет абсолютно никакого способа получить доступ к контексту из атрибута. Однако атрибуты также не создаются , пока вы явно не запросите их с отражением.
Если вы хотите вызвать некоторую логику, то это должно быть сделано явно через код - поэтому вы можете рассмотреть возможность добавления метода к вашему атрибуту , который принимает объект контекста :
public void Invoke(object instance) {...}
например, затем используйте GetCustomAttribute для его получения, приведите его и вызовите .Invoke()