Core data 带有iCloud公共数据和本地排序的NSFetchedResultsController

Core data 带有iCloud公共数据和本地排序的NSFetchedResultsController,core-data,nsfetchedresultscontroller,cloudkit,Core Data,Nsfetchedresultscontroller,Cloudkit,我的应用程序使用CoreData和CloudKit公共数据库作为永久存储。 记录包含位置,应用程序根据用户位置在tableView中显示附近的位置。 由于公共数据库的每个用户都有自己的位置,因此呈现的记录是特定于用户的 出于方便的原因(批量加载、预取、缓存等),我想使用NSFetchedResultsController(FRC)来显示记录 问题: 使用FRC获取记录需要在获取期间应用于数据库记录的sortDescriptor。 由于排序取决于用户位置,并且在用户移动时可能会更改,因此将sort

我的应用程序使用CoreData和CloudKit公共数据库作为永久存储。
记录包含位置,应用程序根据用户位置在tableView中显示附近的位置。
由于公共数据库的每个用户都有自己的位置,因此呈现的记录是特定于用户的

出于方便的原因(批量加载、预取、缓存等),我想使用
NSFetchedResultsController
(FRC)来显示记录

问题:
使用FRC获取记录需要在获取期间应用于数据库记录的
sortDescriptor

由于排序取决于用户位置,并且在用户移动时可能会更改,因此将
sortIndex
存储为记录属性没有意义。 不幸的是,不可能使用基于块的(编码的)排序描述符

我的想法如下:
我将把持久存储区(CoreData+CloudKit)的所有记录提取到FRC观察到的
managedContext
中。
这没有问题,因为记录的总nr为