Ios 如果核心数据不存在,则添加项目';不存在

Ios 如果核心数据不存在,则添加项目';不存在,ios,web-services,Ios,Web Services,我有一个网络服务,将数据发送到手机。有时它已经作为核心数据对象存在,有时它是新的。我对该项有一个唯一的引用,因此我基本上希望搜索该对象是否存在,如果不存在,则将其保存到核心数据存储中。如果它存在,那么在理想世界中,我想更新对象 目前,我从我的Web服务中删除所有对象并再次填充它们,但是当有很多项时,这显然是不实际的 您的实体中应该有类似于唯一ID的东西。然后,从核心数据中获取具有该ID的实体,如果该实体为空,则创建一个新实体,否则使用获取的实体。那有什么问题吗?如果您使用并发,则可能更难。您已经

我有一个网络服务,将数据发送到手机。有时它已经作为核心数据对象存在,有时它是新的。我对该项有一个唯一的引用,因此我基本上希望搜索该对象是否存在,如果不存在,则将其保存到核心数据存储中。如果它存在,那么在理想世界中,我想更新对象


目前,我从我的Web服务中删除所有对象并再次填充它们,但是当有很多项时,这显然是不实际的

您的实体中应该有类似于唯一ID的东西。然后,从核心数据中获取具有该ID的实体,如果该实体为空,则创建一个新实体,否则使用获取的实体。那有什么问题吗?如果您使用并发,则可能更难。

您已经在这里描述了答案。您在实现它时是否遇到了特定的问题?我在想,如果每次执行同步时都必须执行单独的获取请求,那么这将占用大量内存。如果这是最好的解决方法,那么我想那就行了。我可能不得不考虑并发访问,尽管目前还不清楚这是否会在应用程序中出现问题。如果您创建一次“查找”获取请求,在同步时保持对它的引用,并且只修改谓词以查看对象是否已经存在,性能应该是绝对良好的,假设您在后端线程上做了这项繁重的工作。