2012-06-13 61 views
1

我有一個NSObject的子類,充當我的應用程序的主數據模型,有很多屬性和方法。我決定我想用Core Data來保存這些數據,所以我將這個子類改爲NSManagedObject。我在.xcdatamodeld中創建了實體並將其與我的NSManagedObject子類關聯。我想知道的是,如果可以在我的子類中保留未保存的屬性是否可以?例如,這個類包含一個NSOperationQueue屬性,但我不希望Core Data與此屬性進行交互。NSManagedObject的子類屬性

回答

3

當您從實體自動創建(或重新創建)NSManagedObject時,您將失去該文件中的任何其他內容。人們通常使用類別來定製NSManagedObjects的邏輯。它允許您將自定義添加到默認的NSManagedObject,而無需更改該文件中的代碼!

不錯,乾淨。

此鏈接可能會有所幫助:http://developer.apple.com/library/ios/#documentation/cocoa/conceptual/objectivec/chapters/occategories.html

+0

什麼樣的命名方案可以用於其目的只是將模型的業務邏輯添加到類中的類別? – RonLugge

+1

以下是類別的命名約定示例:http://cupsofcocoa.com/2011/03/27/objective-c-lesson-8-categories/ – Kibitz503

+0

感謝您的幫助。 – RonLugge

2

是的,這是完全正常的有在NSManagedObject子類的屬性和它自己的方法。

此外,如果您希望這些屬性中的任何一個利用核心數據緩存機制,則可以將它們作爲瞬態添加到實體模型中。