我们知道在Apple开发中,要想为类或结构提供到Json的自动转换,我们需要让类或结构遵守Encodable协议。
如果该类或结构中的所有属性都遵守Encodable协议,那么你不用再费事多写一行代码了。
但让CoreData的托管类遵守Encodable协议并不那么容易,绝大多数情况下,你需要为托管类的每一个属性去写特定的转换方法。
假设一种情况:CoreData托管类只需要将其中一小部分数据转换为Json,而其他大部分内容都可以从这一小部分数据中推导出来。
如上图所示,Project托管类包含很多属性和复杂的关系。
但我们其实只需要SetbackTrace和它的SBItem数据,就可以生成一个完整的Project实例了。
所以,如果需要把Project转换为Json,我们只要考虑转换其中的