我有以下數據模型:核心數據繼承和關係
實體用戶,從實體Contact繼承。
聯繫人與實體ContactInfo具有一對一的關係。
用戶與聯繫人有一對多的關係。
ContactInfo與Contact和Contact的關係反過來與User有反向關係。
我創建一個的ContactInfo對象爲用戶:
ContactInfo *moInfo = [self createContactInfoManagedObject];
moInfo.contact = userMO;
userMO.contactInfo = moInfo;
其中createContactInfoManagedObject返回類型的ContactInfo的對象。 我就行獲得以下異常
moInfo.contact = userMO;
Unacceptable type of value for to-one relationship: property = "contact"; desired type = Contact; given type = NSManagedObject; value = <NSManagedObject: 0x3b2850> (entity: User; id: 0x3d4fa0 <x-coredata://4889CBE0-094B-49DB-B525-C87F7CD1AA68/User/p1> ; data: {
contacts = (
"0x3d4fa0 <x-coredata://4889CBE0-094B-49DB-B525-C87F7CD1AA68/User/p1>"
);
user = "0x3d4fa0 <x-coredata://4889CBE0-094B-49DB-B525-C87F7CD1AA68/User/p1>";
contactInfo = "0x3ebdc0 <x-coredata:///VCard/t128311BC-4B82-45CF-B87C-9AD38CBC89163>";
}).
我的問題是什麼是錯在這裏? 當我嘗試將用戶實體指定給聯繫人關係時,我認爲繼承存在問題。請指教! 謝謝
createContactInfoManagedObject返回一個ContactInfo對象,轉換不會有太大的變化 – 2011-02-14 18:44:06