J'ai créé une entité dans CoreData qui inclut un type d'attribut Transformable implémenté comme un NSDictionary. L'attribut NSDictionary contient uniquement les valeurs d'une classe personnalisée. Les propriétés de la classe personnalisée sont toutes de type NSString. La classe personnalisée est conforme à l'implémentation NSCoding:Les mises à jour de l'attribut NSDictionary dans CoreData ne sont pas sauvegardées
- (void) encodeWithCoder: codeur (NSCoder *);
- (id) initWithCoder: (NSCoder *) codeur
Lors de l'enregistrement de l'entité pour la première fois tous les attributs, y compris le type transformables (NSDictionary) sont correctement enregistrés dans la base de données. Lorsque la même entité est extraite de la base de données et mise à jour (y compris l'attribut Transformable), elle semble être correctement mise à jour. Toutefois, lorsque l'application est fermée puis rouverte en récupérant l'entité, elle n'affiche pas le type d'attribut Transformable mis à jour, bien que le reste des attributs de type NSDate et NSString soient à jour. L'attribut Transformable est la valeur enregistrée originale et non la valeur mise à jour.
Est-ce un problème avec KVO ou est-ce que je manque quelque chose d'autre en essayant d'enregistrer un NSDictionary rempli d'une classe personnalisée à CoreData?