0

所以我做了很多获取我的对象。例如,在启动时,我为选项卡上的徽章设置了未读计数。为了获得这个未读计数,我需要获取我的数据模型对象以查看哪些对象具有未读标志。所以我们有一个提取。然后在该方法之后,我再次获取所有数据模型对象以执行其他操作。然后在视图控制器上,我需要显示我的数据模型对象,所以我在那里再进行一次提取,依此类推。

所以有很多这样的电话:NSArray *dataModelObjects = [moc executeFetchRequest:request error:&error];

这对我来说似乎有点多余?由于我将使用我的数据模型对象进行大量工作,我是否可以在应用程序中获取它们一次并在需要访问它们时通过实例变量访问它们?但我总是想拥有最新的数据。因此可以添加和/或删除数据模型对象。

我对我想在这里实现的目标有任何意义吗?

4

1 回答 1

0

Core Data 的一个概念和好处是,您不需要每次需要对象时都访问数据库——这就是NSManagedObjectContext创建对象的原因——它存储从数据库中检索到的那些对象,所以如果你尝试获取您已经从数据库中获取的对象,它会非常快。

并且这些对象中的每一个变化都会NSManagedObjectContext自动带给你。

但是,如果您在数据库中进行了一些更改,它们可能不会反映在 中NSManagedObjectContext,因此您必须刷新它们。您可以在此处阅读有关保持对象最新的信息。

于 2012-08-21T11:59:56.583 回答