ios - 核心数据获取请求和未保存的更改

标签 ios save fetch nsfetchrequest

我有一个问题。我的 iOS 应用程序在获取一些数据和未保存的更改时表现得很奇怪。为了您的兴趣,整个行为在与网络服务器同步一些数据时出现。我想进行完全同步,然后保存更改。我尝试了一些解决方法,但没有一个效果很好。

对于问题本身: 我将一些实体与网络服务器同步。它们被组织成区域(它们的父区域),它们本身位于建筑物中。因此,对于每个实体,我查询匹配区域是否已存在,如果不存在,我将创建一个新区域。现在的问题是,如果这些区域刚刚创建,我将无法获取它们(因此每次都会创建一个新的但相同的区域)。我还有一个问题,一旦通过向其添加新创建的区域来更改它,我就无法再获取正确的建筑物,完全相同的查询的结果突然为空。

我已确保 [fetch setIncludePendingChanges:YES] 已设置,并且我还在使用正常结果模式而不是 NSDictionaryResultType(请参阅:NSDictionaryResultType expression not taking into account newly inserted objects)。

我希望有人能提供帮助。

最佳答案

Fetch 请求从上下文中获取数据,该上下文在持久性存储中保存 数据,上下文从中获取数据。当您创建一个新的托管对象时,您是在您的上下文(也就是您的便签簿)中创建它,而不是在您的持久存储中创建它。因此,在您可以获取新创建的对象之前,您必须将该上下文的更改保存到您的商店中。

关于ios - 核心数据获取请求和未保存的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11718737/

相关文章:

node.js - 使用Node Fetch react 应用程序获取数据

ios - 根据激活 UIImagePickerController 的按钮执行不同的功能

ios - 使用边框初始化构建 UIButton

ios - GKLocalPlayer localPlayer无法验证: "this application is not recognised by Game Center" error GKServerStatusCode 5019

matlab - save 使用什么默认的 mat 格式版本?

r - 如何从R中的命令行保存直方图

reactjs - typescript / react : "Object is possibly ' null'"

ios - 导致 "self is immutable"错误的协议(protocol)扩展默认方法

java - 我的世界如何自动保存并同时继续处理游戏?

mysql - 如何获取Mysql中特定类别的最后一项