以编程方式设置核心数据 - NSManagedObjectContext 来自哪里?

Posted

技术标签:

【中文标题】以编程方式设置核心数据 - NSManagedObjectContext 来自哪里?【英文标题】:Programmatically Setting Up Core Data - Where Does NSManagedObjectContext Come From? 【发布时间】:2013-12-31 01:40:37 【问题描述】:

我想完全以编程方式设置 Core Data。我以NSManagedObjectModel 的形式定义了一个数据库模式,并以NSEntityDescription 的形式添加了一些实体定义,就像在this page 的底部所做的那样。一切都很好。

然后我使用它的类方法initWithObjectModel: 创建了一个NSPersistentStoreCoordinator 并传入上述模式。此时我不知道该怎么办。

我假设下一步是以某种方式获得NSManagedObjectContext,因为据我了解,它就像一个 DB 暂存器,是我最终想要做的大多数事情(创建、读取、更新、删除记录等)所必需的)。下一步是什么(记住没有 gui 工具),如果它得到一个上下文,我该怎么做?此外,如果有人知道任何完全以编程方式完成此类事情的博客文章/资源,那就太好了。

【问题讨论】:

【参考方案1】:

下面是设置NSManagedObjectContext的方法:

[[NSManagedObjectContext alloc] initWithConcurrencyType:NSMainQueueConcurrencyType];

可以在这里找到一个很好的分步指南和解释:

http://www.objc.io/issue-4/full-core-data-application.html

【讨论】:

这个链接是个好主意!

以上是关于以编程方式设置核心数据 - NSManagedObjectContext 来自哪里?的主要内容,如果未能解决你的问题,请参考以下文章

以编程方式检查核心数据实体是不是被索引

ios icloud 在设备中以编程方式设置开/关

如何以编程方式填充核心数据存储,为每条记录生成索引

以编程方式添加到核心数据实体(如 IB 绑定“添加”)

如何使用私有核心图形方法以编程方式缩放屏幕(如何查找函数参数)

核心数据:如何保存以编程方式创建的对象数据模型