1

我在合并前后发现我的应用程序中的数据存在一个奇怪的问题。我有一个应用程序可以让用户刷新,所以我有一个单独的上下文用于该线程,然后合并任何更改(我相信我应该这样做)。我注意到刷新后,数据更新是正确的(添加、删除项目等)但我的项目已重新排序。我可以将其追溯到不同的上下文,但不知道为什么会发生这种情况。场景是:

在后台上下文中刷新并使用 deleteObject 保存此触发器与通知合并 在后台上下文中查询数据库显示正确的顺序 在主上下文中查询数据库(应该将更改合并到它)显示不同的顺序

如果我已经使用单独的上下文和合并进行了设置,为什么主上下文中的数据与合并后后台上下文中的数据不同?我知道这很奇怪,所以任何帮助表示赞赏!

4

2 回答 2

1

获取请求(没有排序描述符)返回的对象的顺序是未指定的。如果您需要一个明确定义的顺序,您应该在获取请求中添加一个排序描述符。

于 2013-11-13T19:53:28.200 回答
0

我调试并发现 MOC 的 CD 保存修复了它。我仍在弄清楚为什么,但以防万一其他人遇到这种情况,保存帮助了我

于 2013-11-13T22:40:23.793 回答