gpt4 book ai didi

ios - 核心数据 : Using transient properties with read-only persistent store

转载 作者:行者123 更新时间:2023-11-28 19:40:45 24 4
gpt4 key购买 nike

处理来自只读 持久存储的托管对象 (NSManagedObject) 我试图使用 transient 属性来存储一些临时值。考虑到 transient 属性没有保存到持久存储中,我认为将它们用于缓存目的没有错。但事实证明,即使在 read-only 存储的托管对象的 transient 属性中,您也无法写入数据。在 NSManagedContext 的保存操作中我遇到了这个错误

"Cannot update objects into a read only store"

(我确定只有 transient 属性发生了变化。)

这是为什么呢?它可以被认为是 NSManagedObjectContext 的错误吗?感谢您分享您的想法。

最佳答案

这是预期的行为。无法修改只读 存储。甚至在托管对象上下文中(在内存中)也不行。这就是“只读”的含义。几乎不是错误。

解决方案相当简单。创建第二个内存中持久存储,并通过配置将其集成到您的托管对象模型中。通过这家商店跟踪您的临时属性(property)。也许您必须创建一个“包装器”实体并通过关系将其链接到只读存储。

尽管创建了一个更复杂的模型设置,但我认为这是一个可行的解决方案,因为一旦你完成了这个设置,你基本上就可以忘记它了。

关于ios - 核心数据 : Using transient properties with read-only persistent store,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34464399/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com