我正在我们的小组项目中使用JSONModel,当服务器人决定将他们的响应数据从TitleCase更改为camelCase时遇到了问题。在接下来的时间里,我们需要支持这两个选项,所以我希望因为我们已经在使用JSONModel,我可以使用它的功能来解决我们的问题,但我似乎无法找到一个简单的方法要做到这一点。
目前我们可以进行JSONModel转换,然后检查其他(camelCase)键,但我希望在JSONModel本身中更一般地做。
我查看了keyMapper,但这只是让我改变它所寻找的东西,它似乎无法检查两者。
我尝试过这样的事情;
- (void)setCountryCodeWithNSDictionary:(NSDictionary *)dictionary {
if ([dictionary[@"CountryCode"] isMemberOfClass:[NSString class]]) {
self.CountryCode = dictionary[@"CountryCode"];
}
if ([dictionary[@"countryCode"] isMemberOfClass:[NSString class]]) {
self.CountryCode = dictionary[@"countryCode"];
}
}
但由于某种原因,这似乎不起作用。
我想一个更普遍的问题是,如何使JSONModel密钥检测不区分大小写?
对此的任何帮助将不胜感激。
答案 0 :(得分:0)
在创建字典副本时,我会将所有键设置为小写等效项,并始终与possibleKey.lowercased()进行比较