Я пишу декорирующий прокси с помощью Castle DynamicProxy. Мне нужен прокси-перехватчик для перехвата только записи свойств (не читает), поэтому я проверяю имя метода таким образом:
public void Intercept(IInvocation invocation)
{
if (invocation.Method.Name.StartsWith("set_")
{
// ...
}
invocation.Proceed();
}
Теперь это отлично работает, но мне не нравится тот факт, что мой прокси имеет интимное знание о том, как реализуются свойства: я хотел бы заменить проверку имени метода на нечто вроде:
if (invocation.Method.IsPropertySetAccessor)
К сожалению, мой Google-fu не помог мне. Любые идеи?