Core Data 中带有自定义对象的可转换集合

Posted

技术标签:

【中文标题】Core Data 中带有自定义对象的可转换集合【英文标题】:Transformable Collection in Core Data with custom Objects 【发布时间】:2012-09-06 14:11:42 【问题描述】:

我必须在核心数据数据库中存储一组自定义对象(字典)。 到现在为止还挺好。字典被存储并且可以作为“可变形”对象毫无问题地加载。

自定义对象包含属性,但在从数据库加载它们后这些属性为零。 经过大量搜索,我没有找到任何关于这个问题的东西。 似乎属性没有以这种方式存储。 (可能是因为只存储地址而不存储数据??)

当然,最好存储一个支持 Core Data 的数据类型的对象,但在这种情况下,可转换的对象就很好,并且可以为我节省大量的工作和时间。

谢谢你!

【问题讨论】:

【参考方案1】:

Core Data Guide 涵盖了可变形对象的整个概念。请注意,这使用键控归档器/取消归档器从您的对象创建一个 NSData 对象,反之亦然。这意味着您的客户反对我遵守 NSCoding,并在被要求时对其中的所有信息进行编码以及处理未编码。

如果您现在不这样做,这就是您的问题的根本原因。我建议您在一个自定义对象中采用 NSCoding,然后验证实际上您可以将其编码为 NSData 对象,然后从对象中取消编码并返回相同的对象。当你完成这项工作后,你就可以使用 Core Data 进行测试了。

【讨论】:

以上是关于Core Data 中带有自定义对象的可转换集合的主要内容,如果未能解决你的问题,请参考以下文章

UITableView 中带有自定义单元格的部分

SWIFT 中带有自定义参数的发布请求

Swift 中带有自定义 TableViewCell 的核心数据图像

ggmap中带有自定义颜色代码的Voronoi镶嵌?

欧芹验证中带有自定义域的电子邮件的正则表达式是啥

虚幻引擎 4 (ue4) 中带有自定义 c++ 蓝图函数库的蓝图循环/for/while 节点