Реализация INotifyPropertyChanged или аналогичного пользовательского события в базовом классе - PullRequest
0 голосов
/ 02 октября 2009

Есть ли способ сделать это:

Мне нужно разработать самый простой способ поддержки регистрации изменений свойств некоторого класса. Помимо ручного способа добавления поддержки INotifyProperyChanged, есть ли способ сделать это так:

class Base ... // all notification logic here

class Child
{
    public string Name { get; set; }
    public int SomeNumber { get; set; }
    // etc....
}

, чтобы я мог делать Child.PropertyChanged + = some_handler и получать уведомления только об изменениях свойств Child. Это не для NHibernate, или что-то еще, это для ручного использования во всем проекте. Я рассмотрел некоторые примеры этого с помощью Castle Dynamic Proxy (например, здесь ), но я не понимаю, как его использовать :(

Конечно, я хотел бы изучить там фреймворки и AOP в целом, просто сейчас у меня нет времени ...

Заранее спасибо за любые комментарии ...

1 Ответ

2 голосов
/ 02 октября 2009

Прокси-серверы или AOP действительно являются вашими единственными вариантами выполнения этого автоматически, поэтому вам нужно либо найти время для расследования, либо сделать это по-старому доброму способу .

...