2009-05-20 4 views

Répondre

6

Vous pouvez faire exactement ce que vous avez décrit. Si les ivars ne figurent pas dans la description de l'entité, ils ne font pas partie du modèle sous-jacent. Les données de base ont en réalité un support explicite pour les attributs NSManagedObject qui ne sont pas persistés, cependant - ils sont marqués "transitoire". Cependant, si vous fabriquez des ivars personnalisés, n'oubliez pas de lâcher les variables d'instance "supplémentaires" dans didTurnIntoFault plutôt que dealloc comme vous le feriez avec un objet normal.

+0

Merci, cela semble assez facile. Avantage d'utiliser des attributs transitoires plutôt que d'ajouter des ivars? –

+2

Les ivars transitoires obtiennent le support du suivi des modifications à partir des données de base, de sorte qu'un objet est marqué comme modifié si une propriété transitoire est modifiée. Cela vous permet de faire un traitement personnalisé dans le getter/setter comme une propriété transitoire qui est un type de données non-core qui est sérialisé dans un attribut NSData. –

+0

Il devrait également (ne devrait jamais vraiment utilisé des données de base) soutenir la gestion d'annulation. –

Questions connexes