Apple Documents说“如果上下文已经包含从提取返回的对象的托管对象,则在获取结果中返回现有托管对象”
我的问题是如果我在上下文中更新了对象但没有保存上下文,那么Fetch Request将返回什么对象?来自Context的更新对象或来自Datastore的新对象。
答案 0 :(得分:1)
你的引言回答了这个问题;它将成为记忆中的一个。有了这个警告,如果你创建一个新的NSManagedObjectContext
并在该上下文上执行获取请求,你将从数据存储中获取该对象。
答案 1 :(得分:0)
我猜它会返回来自上下文的更新对象。
注意:由于声誉不佳,我必须作为答案。
答案 2 :(得分:0)
取决于获取请求的includesPendingChanges
设置。默认情况下,
includesPendingChanges
为YES
,这意味着获取将在当前未保存
变化。
但是,如果您对获取请求使用NSDictionaryResultType
结果类型,
这隐含地暗示includesPendingChanges = NO
,你只会获得结果
来自商店。