2017-10-19 89 views
1

是否有可能如何確定NSManagedObject是否有效,而不實際保存?你可以在不保存的情況下驗證NSManagedObject嗎?

似乎應該有一個isValid函數,或者某種方式請求NSManagedObjectContext運行驗證特定的對象,而不實際保存。

我能想到的唯一解決方法是將對象拉入臨時子上下文中,「觸摸」它以便將其視爲已更新,然後嘗試保存子上下文。但這似乎很野蠻。

+0

您是否看到過內建於關鍵值編碼的驗證函數 - 請參閱[本文檔](https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/KeyValueCoding/ValidatingProperties.html#//apple_ref/DOC/UID/10000107i-CH18-SW1)?我認爲CoreData會自動使用它們,但沒有理由不能手動觸發它們。 – pbasdf

+0

謝謝。我曾假設他們只是爲了壓倒一切並進行跨性能驗證。沒有意識到他們也觸發了基於財產的驗證程序。 –

回答

1

您可以撥打validateForInsertvalidateForUpdate

相關問題