【问题标题】:How to create unique identifier for an entity in iphone core data如何为 iphone 核心数据中的实体创建唯一标识符
【发布时间】:2012-04-28 16:50:57
【问题描述】:
我是核心数据和 iphone 编程的新手,所以不要介意我的傻 qn。
我不知道如何将属性标记为 xcdatamodel 文件中的主键,或者可能在外部。我环顾四周,发现有人说不可能。
我正在获取我获取的每个对象的标识符,我需要通过核心数据存储该对象,并且我可能需要在我的 Web 服务中使用该标识符来检索其他数据。
我如何保持实体的主键等于该标识符,非常感谢任何帮助。
提前致谢,
瑜伽
【问题讨论】:
标签:
iphone
core-data
primary-key
nsentitydescription
【解决方案1】:
简而言之,您不能自动将属性标记为主键。你自己维护一个。
您可以执行以下任何操作:
使用[NSManagedObject objectID]。
您自己的类似主键的系统,将整数存储在模型中并随着每个对象的创建而递增
【解决方案2】:
您不应该将 Core Data 视为具有表和键的数据库结构。这只是一个实现细节。
要获取具有特定实体的实体,您可以在数据存储中为该标识符创建一个获取请求,它将将该对象检索到托管对象上下文中。
如果担心性能,可以在数据模型中将存储此标识符的属性设为indexed。