我有我的數據庫中的1個實體「消息」的值MessageID,messageText和我想讀取核心數據的每一行,使我的類「消息」的對象,並把新對象數組。 這是我第一次使用Core Data,但我還沒有完全掌握它,我如何設法做到這一點。作爲對象讀取核心數據
回答
爲您希望檢索的實體創建獲取請求。不要給它一個謂詞,設置你想要的任何類型描述符。
在託管對象上下文中執行獲取請求,它將返回該實體所有對象的數組。
這是故意只是一個描述性的答案,你可以從核心數據入門文檔中找到如何做到這一點的具體細節;您是Core Data中的新成員,這是學習它的好方法。
此外 - 不要將核心數據視爲轉換爲對象的數據行。這是一個對象關係圖。它存儲實體對象和它們之間的關係。您不要將「行」轉換爲對象,直接返回對象。
@Abizern與代碼響應:
NSManagedObjectContext *moc = // your managed object context;
NSEntityDescription *entityDescription = [NSEntityDescription
entityForName:@"Message" inManagedObjectContext:moc];
NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:entityDescription];
// You can also add a predicate or sort descriptor to your request
NSError *error;
NSArray *array = [moc executeFetchRequest:request error:&error];
if (array == nil)
{
// Deal with error...
}
如何獲取數組中的值的引用?'array [0] .messageID'不起作用,它表示屬性messageID在'id'類型的對象上找不到。 – user2414460
自己管理,謝謝你的回答。 – user2414460
一種更現代的創建提取請求的方法 - 你可以在一行中完成而不需要創建NSEntityDescription - NSFetchRequest * request = [NSFetchRequest fetchRequestWithEntityName:@「Message」];'這已經在iOS 4以後可用。 – Abizern
- 1. 核心數據獲取特定對象
- 2. 核心數據獲取關係對象
- 3. 核心數據不取對象
- 4. 獲取核心數據相關對象
- 5. 核心數據對象按鈕操作
- 6. 核心數據讀取數據
- 7. 核心數據/ NSFetchedResultsController - 註冊與讀取對象相關的已更改對象
- 8. 核心數據的管理對象屬性作爲參數
- 9. 在後臺提取核心數據對象:對象無故障
- 10. 如何從特定對象ID獲取核心數據對象?
- 11. 獲取核心數據對象的子對象的屬性?
- 12. 核心數據 - 使用keypath和對象ID獲取對象
- 13. 核心數據一對多取數據
- 14. iPhone - 數據核心使用子對象從父表中讀取數據
- 15. 核心數據爲現有實體獲取多對象
- 16. 從過濾關係爲空的核心數據提取對象
- 17. 核心數據取出的屬性$ FETCHED_SOURCE解析爲對象ID
- 18. 使用核心數據生成的類作爲模型對象...?
- 19. 使用核心數據作爲遠程對象的存儲
- 20. 使用第三方對象作爲核心數據實體
- 21. 從核心數據中讀取
- 22. 核心數據刪除對象函數
- 23. 核心數據:檢索數據庫對象時爲空數組
- 24. 核心數據:對
- 25. 核心數據:製作數據庫的對象副本
- 26. 核心數據:取
- 27. 美麗核心數據對象ID
- 28. 在覈心數據中添加對象
- 29. 帶核心數據對象的NSPredicate
- 30. 核心數據託管對象集
啊,謝謝。 我習慣於考慮行,這就是爲什麼我不理解它。 – user2414460