使用NSFetchRequest
,是有可能避免取出一個NSManagedObject
是已經或將刪除嗎?避免獲取刪除NSManagedObjects
我知道有可能檢查-isDeleted
或-managedObjectContext
是否返回零,但有沒有辦法在數據庫層做到這一點?
使用NSFetchRequest
,是有可能避免取出一個NSManagedObject
是已經或將刪除嗎?避免獲取刪除NSManagedObjects
我知道有可能檢查-isDeleted
或-managedObjectContext
是否返回零,但有沒有辦法在數據庫層做到這一點?
從技術上講,如果該對象被真正刪除,它將不會顯示在數據庫層。問題的症狀是什麼?
也許「數據庫層」這個短語具有誤導性。我想知道是否可以避免使用下一次保存操作獲取將從商店中刪除的對象。 – hwaxxer 2012-02-26 12:30:41
仍不確定爲什麼你可能想這樣做。如果你的應用程序是多線程的,那麼任何對象都有可能被刪除(從而變成故障)。如果您使用的是一個'NSManagedObjectContext',那麼Costique說,首先保存它將至少確保暫掛刪除被下推到'NSPersistentObjectStoreCoordinator'.Pending刪除只能由個人的'NSManagedObjectContext'知道,而不是對等的那些掛在同一個持久性商店。你能詳細說明究竟是什麼問題導致你想以這種方式工作嗎? – 2012-02-27 13:21:33
我正在與Web服務同步,在任意時間插入和刪除對象。用戶界面正在觀察對上下文的更改,並在發生特定更改時創建提取請求。但是,這個請求也會返回要刪除的對象,並且在下一次保存時,我寧願在請求中將它們過濾出來。 – hwaxxer 2012-02-27 13:50:08
嘗試在提取前保存上下文。 – Costique 2012-02-23 14:43:48
我寧願調用'-processPendingChanges',這不是問題的答案。 – hwaxxer 2012-02-23 14:50:45