0

我想将 NSDictionary 添加到 NSManagedObject 类别类(或 NSManagedObject 类本身)中。当我这样做时,我尝试访问该属性,抛出异常。

这真的可能吗?我不能在模型中将此属性添加为瞬态,因为当然没有 NSDictionary 数据类型。

谢谢!

4

2 回答 2

1

您没有说您当前是如何创建属性或异常是什么,但从您给出的描述来看,您应该将 Core Data 模型中的属性设置为transformable. 将其设置为transformable将导致在NSDictionary您使用标准NSCoding协议使用它时将其存档(和取消存档)。确保您放入字典中的所有内容都支持该NSCoding协议,以便正确存档和恢复。

于 2013-09-29T16:49:25.697 回答
0

使用transformable是方法。以下是关于可变形属性的更多见解。

Transformable 数据类型是一种特殊的数据类型,它允许我们基于 Objective-C 类(自定义对象)创建属性。此数据类型大量用于存储 UIImage、UIColor 等实例。由于持久化存储中存储的信息必须是 NSData 实例的形式,在使用 Transformable 数据类型时,我们需要创建 Value Transformers 来将自定义对象(Transformable 数据类型属性中的信息)转换为 NSData 的实例(在存储到持久存储之前)并在从持久存储中检索时将 NSData 的实例转换回自定义对象。

于 2013-09-29T17:59:02.357 回答