【问题标题】:core data difference between findfirstbyattribute and findfirstbyattribute in context上下文中 findfirstbyattribute 和 findfirstbyattribute 之间的核心数据差异
【发布时间】:2025-12-07 18:05:02
【问题描述】:

这两种在 Core Data 中获取对象的方式有什么区别?一个比另一个更有效吗?他们做同样的事情吗?

MR_findFirstByAttribute:(NSString *) withValue:(id) inContext:(NSManagedObjectContext *)

MR_findFirstByAttribute:(NSString *) withValue:(id)

【问题讨论】:

    标签: objective-c core-data magicalrecord


    【解决方案1】:

    它们做的事情完全相同,只是一个允许您提供上下文,另一个则获取当前线程的上下文 ([NSManagedObjectContext MR_contextForCurrentThread])。如果您已经拥有适当的上下文,那么自己提供它会更有效。

    【讨论】:

    • 并且[NSManagedObjectContext MR_contextForCurrentThread] 已被弃用(请参阅*.com/questions/20535419/…),因此您根本不应该使用第二种方法。
    • @MartinR 是 [NSManagedObjectContext MR_defaultContext];也被弃用了?使用魔法记录时是否有理由访问 managedobjectcontext?