Codable 与 NSOrdered 集?

Codable with NSOrdered set?

看起来 NSOrdered 不支持 Codable 协议。 我正在使用 codable 通过 alamofire 解析数据,coredata.What 是实现该目标的方法吗?求助! :)

 self.photos = try values.decodeIfPresent([Photo].self, forKey: .photos)

JSON 没有有序集。它只有数组。因此,您需要通过调用其初始化程序将数组转换为 NSOrderedSet:

self.photos = NSOrderedSet(array:
    try values.decodeIfPresent([String].self, forKey: .photos) ?? [])

(也就是说,我强烈建议摆脱 NSOrderedSet。它是一个混乱的数据结构,并且与 Swift 一起使用效果不佳。你几乎总是更好地包装一个数组并控制何时你插入它。如果你认为存在性能差异,你应该在假设之前对你的实际数据进行大量分析。)