一个托管对象上下文有两个持久存储 - 可能吗?
我有一个相当复杂的数据模型,包含大约 10 个实体。有些需要存储到磁盘,有些只需在应用程序运行时在内存中可用。是否可以使用同一托管对象上下文的两个持久存储来实现此目的,或者我应该相应地分离我的数据模型?
I have a fairly complex data model with approximately 10 entities. Some need to be stored to disk and others just need to be available in memory when the application is running. Is it possible to achieve this using two persistent stores for the same managed object context, or should I separate my data models accordingly?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
是的,您的 NSManagedObjectContext 使用 NSPersistentStoreCoordinator 来确定特定模型应使用哪个存储。通过设置托管对象上下文的持久性存储协调器,您可以定义使用多个不同类型的持久性存储的自定义映射。
http://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/CoreData/Articles/cdBasics.html#//apple_ref/doc/uid/TP40001650-SW4
Yes, your NSManagedObjectContext uses a NSPersistentStoreCoordinator to determine which store a particular model should use. By setting the persistent store coordinator of your managed object context you can define a custom mapping which uses multiple persistent stores of different types.
http://developer.apple.com/library/ios/documentation/Cocoa/Conceptual/CoreData/Articles/cdBasics.html#//apple_ref/doc/uid/TP40001650-SW4
您可以使用 TechZen 提到的配置:
有关详细信息,请查看我的其他答案此处。
You may use configurations as TechZen mentioned:
For details check my other answer here.