Я создал Entity в CoreData, который включает тип атрибута Transformable, реализованный как NSDictionary. Атрибут NSDictionary содержит только значения пользовательского класса. Все свойства пользовательского класса имеют тип NSString. Пользовательский класс соответствует реализации NSCoding:
- (Недействительными) encodeWithCoder: (NSCoder *) кодировщик;
- (id) initWithCoder: (NSCoder *) кодер
При сохранении сущности в первый раз все атрибуты, включая тип Transformable (NSDictionary), должным образом сохраняются в БД. Когда тот же самый объект извлекается из БД и обновляется (включая атрибут Transformable), он, кажется, обновляется должным образом. Однако, когда приложение закрыто и затем вновь открыто, выборка Entity не показывает обновленный тип атрибута Transformable, хотя остальные атрибуты типа NSDate и NSString являются современными. Атрибут Transformable - это исходное сохраненное значение, а не обновленное значение.
Это проблема с KVO или я что-то упускаю при попытке сохранить NSDictionary, заполненный пользовательским классом, в CoreData?