2012-02-23 119 views
1
CustomManagedObject *newObject = (CustomManagedObject *)[NSEntityDescription insertNewObjectForEntityForName:@"Substation" inManagedObjectContext:[[DatabaseHelper instance] context]]; 

我使用上面一行创建一个新对象。但有时我不想将该对象保存到永久数据存储中,我只是想从上下文中删除它。有没有类似removeObject的方法:object fromContext:context?iPhone核心数据 - 如何从上下文中删除NSManagedObject?

回答

1

您是否检查过文档?该方法被称为deleteObject

[[[DatabaseHelper instance] context] deleteObject:newObject]; 
+0

'指定应从其持久性存储更改时committed.'他想从上下文中删除对象被删除的对象,而不是将其标记为删除。这就是'deleteObject:'的作用 – 2014-06-25 17:18:34

+0

@itsthejb您错过了以下段落:“如果对象尚未保存到持久性存储中,则仅从接收器中删除该对象。” – 2014-06-26 09:21:37

+0

好的,是的。在这个用例中,我仍然建议使用临时的“scratch”上下文。在主要上下文中创建对象的问题是,除非您可以仔细平衡创建对象并将其删除,否则它们将被保存到商店中。不幸的是,'NSMOC'没有任何* prune *特性 – 2014-06-26 09:23:22

相关问题