Как исключить свойства из NSManagedObjectContextObjectsDidChangeNotification - PullRequest
2 голосов
/ 28 сентября 2010

Я использую CoreData в своем приложении и зависит от NSManagedObjectContextObjectsDidChangeNotification.Я уже создал подкласс NSManagedObject для всех моих сущностей и создал свойства и средства доступа @dynamic.Можно ли исключить некоторые свойства конкретных объектов из уведомления?Если так, как бы я это сделал?: -)

Спасибо за помощь!

1 Ответ

1 голос
/ 28 сентября 2010

Вы не можете предотвратить запуск уведомления об изменении контекста для некоторого атрибута некоторого экземпляра сущности, но вы можете получить информацию о характере изменений и ответить на нее вместо этого.

Используйте [Уведомление userInfo], чтобы получить словарь, который содержит списки измененных объектов на основе общего типа изменений (вставлены, обновлены, удалены). Пример (извлечено из этого ответа ):

NSSet * deletedObjects = [userInfoDictionary objectForKey:NSDeletedObjectsKey];

Затем вы можете запросить у управляемых объектов их -changedValues ​​ и предпринять соответствующие действия, если ключи возвращаемого словаря содержат (или не содержат) интересные ключи атрибута.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...