gpt4 book ai didi

iphone - CoreData 有什么不同

转载 作者:行者123 更新时间:2023-12-01 16:59:23 25 4
gpt4 key购买 nike

我正在使用 coredata 框架。现在我有一个问题:
我在 [1:n]Order 对象之间有关系 OrderDetail
在第一个 TableView 中,我使用 NSFetchedResultsController 来获取 Order 的列表。
我的问题是 如何计算每个 Ordertail Order

- (void)configureCell:(UITableViewCell *)cell atIndexPath:(NSIndexPath *)indexPath

我得到了 Order 对象。称它为父对象。

计算 OrderDetail 的好方法是什么:
  • NSFetchRequest 与谓词 "Order == %@' 和 parent_Object 一起使用。然后我计算结果获取的数组。
  • 使用属性:parent_Object.OrderDetails.count

  • 有什么区别以及哪种方式可以节省执行时间。
    请帮帮我。

    最佳答案

    一般来说,从核心数据中获取是一项昂贵的工作。但是,在这两种情况下,您都不应该真正遇到任何性能问题。要回答您的问题,您应该使用该属性,因为不需要获取或谓词。仅当您过滤掉某些对象时才使用谓词。所以你在这两种方法中所做的是

  • 创建一个谓词并使用它来获取所有 Order数组中的对象。然后,调用 count 得到 OrderDetails 的总数。对于 Order .
  • 您已经拥有一组托管对象并对其调用计数。

  • 因此,从逻辑上讲,第二种方式更快,因为您不进行任何获取。但对于小项目来说,这真的不重要。如果您有大量对象并且只想对结果进行采样,您可以随时调用 setFetchLimit:在你获取它之前的请求。

    关于iphone - CoreData 有什么不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8584545/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com