2010-09-16 33 views
3

Quelqu'un peut-il expliquer les différences dans la pratique entre les modes NSArrayContoller (Classe/Entité}?NSArrayController classe vs le mode Entité en application du document de base de données Mac OS X

Je suis juste face à des problèmes de débogage dans mon document à base de Core bureau de données application (en utilisant le mode Entity pour tous mes contrôleurs)

Ma structure de base de données est devenue assez compliquée et il faut beaucoup de temps pour trouver de mauvaises liaisons (fautes de frappe, etc.) J'ai également généré des classes pour chaque entité dans mon modèle de données

Cela ferait-il une différence dans le suivi bindi ng erreurs si je commuté tous mes contrôleurs en mode Class?

Répondre

5

L'entité est destinée aux contrôleurs de baie dont les baies contiennent des objets gérés Données de base.

La classe est destinée aux contrôleurs de baie dont les baies contiennent des objets simples (non gérés). Donc, non, la commutation d'un contrôleur RAID qui conserve les objets gérés sur le mode objet non managé n'aidera pas.

Ma structure de base de données est devenue assez compliquée et il faut tellement de temps pour trouver des liaisons erronées (fautes de frappe erronées, etc.).

Vous devriez obtenir une exception à ce sujet dans la console du débogueur.

+0

- [NSManagedObject valueForUndefinedKey:] C'est tout ce que j'ai, même avec -NSBindingDebugLogLevel 1 passé au lancement à l'exécutable. Comment obtenir plus de description? Quand j'ai 20 tables de bogues - à la recherche de si c'est assez frustrant. – Lukasz

+0

dépiste le problème en supprimant une liaison après l'autre. Si vous avez le mauvais keyPath donné par l'exception, vous pouvez également ouvrir votre xib avec un éditeur de texte en clair et rechercher la clé. –

+0

Il semble que ce soit le seul moyen. Je vous remercie. – Lukasz