示例:我从XML文件中读取数据。此数据具有唯一的id元素。我想用原始的唯一ID存储这些对象。我该怎么做?
我发现我可以向托管对象询问它的ID,如下所示:
NSManagedObjectID *moID = [managedObject objectID];
但问题是:XML告诉我id元素这是哪个对象,如果这个对象已经存在,我需要在核心数据的数据库中查找,或者不。那么它是在我的托管对象模型中为该实体创建一个id属性然后查询的唯一选项吗?那么我会有两个id系统吗?
答案 0 :(得分:6)
不要担心核心数据的ObjectID
。这是一个内部唯一ID,在对象的生命周期中不保证不变(例如,当您将对象保存到sql store时它会发生变化)。只需在模型中创建一个新的强制属性,并将其标记为索引,这样检索就会很快。
答案 1 :(得分:1)
在与此类对象关联的实体中,只需添加string类型的另一个属性,将其称为objectID或类似,并声明它是必需的。