2011-09-22 67 views
0

我正在構建一個iPhone應用程序,其中有兩個數據存儲區,一個用於靜態數據,一個用於動態數據。爲此,我使用了兩個獨立的核心數據堆棧。動態數據包含ID的實體和屬性以及日期的另一個屬性。 ID屬性引用靜態數據存儲中實體中的匹配ID。如何根據另一個數據存儲區中的數據從一個數據存儲庫訂購核心數據獲取結果

我想從靜態存儲中獲取ID的動態數據存儲中的項目,並根據動態數據存儲中的日期對其進行排序。我已經用google搜索了這個,並在這裏搜索了關於跨商店獲取的屬性的問題,但我還沒有設法找到解決方案。我可以獲取從靜態存儲正確的項目,但不是在正確的次序,所以我的問題是這樣的:我可以以某種方式(也許牽強屬性)獲取由日期在動態存儲排序的靜態項目,或者我需要在獲取它們之後在代碼中對它們進行排序?

編輯: 靜態存儲中的實體可能會被動態存儲中的多個實體引用。

回答

0

您可以在託管對象模型中爲您的實體添加臨時屬性。瞬態屬性根據需求進行計算,因此這將是在其他商店中進行查找的適當位置。

然後,在您的讀取請求中,您只需添加一個引用目標對象上的瞬態屬性的排序描述符。

在transient屬性的實現中,查找其他商店中的匹配記錄並返回日期值。

http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/CoreData/Articles/cdNSAttributes.html

目前尚不清楚對我,爲什麼你選擇了,雖然分隔的數據,這是一個特別脆弱的範例,你將不得不要麼吃維護跨店參考的性能損失,或風險無法在動態商店中找到該記錄。

+0

非常感謝您對這個答案。我忘了提及靜態存儲中的每個實體可能被動態存儲中的多個實體引用。當我認爲這意味着我不能使用瞬態屬性時我錯了嗎?關於爲什麼我分離數據。原因是將用戶數據與我提供的靜態數據分開。我認爲這會使更新更容易。你相信我應該放棄這個想法嗎? – HaukurPalma

+0

我不認爲它會阻止您使用瞬態屬性,只是該屬性的實現需要認識動態存儲中的多個數據對象。 – ImHuntingWabbits

相關問題