Core data 核心数据关系不返回预期的实例

Core data 核心数据关系不返回预期的实例,core-data,Core Data,我有两个NSManagedObject,ListInstance和Item,ListInstance与Item有一对多关系。当我向ListInstance的一个实例询问它的itemInstances时,它告诉我它将在一个内存地址上给我一个项,但随后它会在另一个内存地址上给我一个项。这会给我带来问题,因为当我更新item.listInstance的值时,它不会指向原始listInstance。因此,我的原始ListInstance从未得到更新 以下lldb日志显示了出现问题的地方: (lldb)

我有两个NSManagedObject,ListInstance和Item,ListInstance与Item有一对多关系。当我向ListInstance的一个实例询问它的itemInstances时,它告诉我它将在一个内存地址上给我一个项,但随后它会在另一个内存地址上给我一个项。这会给我带来问题,因为当我更新item.listInstance的值时,它不会指向原始listInstance。因此,我的原始ListInstance从未得到更新

以下lldb日志显示了出现问题的地方:

(lldb) po instance.itemInstances
Relationship 'itemInstances' on managed object (0x7edec030) <ListInstance: 0x7edec030> (entity: ListInstance; id: 0x7edf55f0 <x-coredata:///ListInstance/tC5D79701-0A02-4976-B8B2-DF7DDC36442C4> ; data: {
    // properties omitted   
    itemInstances =     (
        "0x7ea0af20 <x-coredata:///Item/tC5D79701-0A02-4976-B8B2-DF7DDC36442C5>"
    );
    // properties omitted   
}) with objects {(
    <Item: 0x7ea0aee0> (entity: Item; id: 0x7ea0af20 <x-coredata:///Item/tC5D79701-0A02-4976-B8B2-DF7DDC36442C5> ; data: {
    // properties omitted   
    listInstance = "0x7edf55f0 <x-coredata:///ListInstance/tC5D79701-0A02-4976-B8B2-DF7DDC36442C4>";
    listInstanceId = <ecc075981a324305b0aa9207baeb1aeb>;
    // properties omitted   
})
)}

注意,该实例认为它指向一个内存地址为0x7ea0af20的项,但当我实际向它请求值时,它返回一个内存地址为0x7ea0aee0的项。核心数据认为这两个物体都存在于x-coredata:///Item/tC5D79701-0A02-4976-B8B2-DF7DDC36442C5问题一定出在别处。您必须显示相应的代码

请注意,0x7ea0af20是托管对象ID,而不是项对象的地址。Item对象的地址只出现一次,是0x7ea0aee0,而ID也在关系日志中提到


类似地,listInstance具有ID 0x7edf55f0和地址0x7edec030。

代码会有所帮助。可能与如何实例化本地属性有关?