关于iphone:在iOS的核心数据中存储复杂数据结构的最佳实践是什么?

What's the best practice to store complex data structure in core data on iOS?

我有一个复杂的数据结构以及一些用于查询的其他数据字段,需要与核心数据一起保存以备将来使用。我正在考虑将复杂的数据结构序列化为 JSON 字符串,并将其作为一个字符串字段存储在核心数据实体中,而不是创建具有许多属性的实体。这个复杂的数据结构纯粹是为了将来使用而保存的,不需要查询任何属性,但是我确实需要查询其他数据字段,所以我正在考虑使用核心数据。

我想知道这(存储为 JSON 字符串)是最佳实践还是有更好的解决方案?


简短的回答,不,这不是最好的解决方案。如果你不想用你创建的数据模型来存储对象,那么 Core Data 会给你带来很少的好处。您基本上将拥有一堆不透明的对象,除非您反序列化其 json 字符串,否则您将无法区分这些对象。如果这足以满足您的需求,那么我建议您将对象归档到磁盘并跳过 Core Data 的开销。