在保存时,我可以告诉Core Data为y对象使用特定的唯一ID吗?

don*_*ile 1 iphone core-data

示例:我从XML文件中读取数据.此数据具有唯一的id元素.我想用原始的唯一ID存储这些对象.我该怎么办?

我发现我可以向托管对象询问它的​​ID,如下所示:

NSManagedObjectID *moID = [managedObject objectID];
Run Code Online (Sandbox Code Playgroud)

但问题是:XML告诉我id元素是哪个对象,如果这个对象已经存在,我需要在核心数据的数据库中查找.那么它是在我的托管对象模型中为该实体创建一个id属性然后查询的唯一选项吗?然后我会有两个id系统吗?

die*_*ikh 6

不要担心ObjectID核心数据.这是一个内部唯一ID,在对象的生命周期中不保证不变(例如,当您将对象保存到sql store时它会发生变化).只需在模型中创建一个新的强制属性,并将其标记为索引,以便快速检索.