我需要一些关于KVC的帮助。KVC:如何测试现有密钥
有关操作上下文几句:
1)iPhone连接(客户端)到WebService获取对象,
2)我使用JSON来传输数据,
3)如果客户端有完全相同的对象映射,我可以遍历JSON中的NSDictionary以将数据存储在永久存储区(coreData)中。 要做到这一点,我用这个代码片段(假设全部数据的NSString):
NSDictionary *dict = ... dictionary from JSON
NSArray *keyArray = [dict allKeys]; //gets all the properties keys form server
for (NSString *s in keyArray){
[myCoreDataObject setValue:[dict objectForKey:s] forKey:s]; //store the property in the coreData object
}
现在我的问题....
4)如果服务器实现了新的版本,会发生什么具有1个新属性的对象 如果我将数据传输到客户端,并且客户端未处于保存版本级别(这意味着仍在使用“旧”对象映射),我会尝试为非客户端分配值现有的密钥...我将会收到以下消息:
实体“myOldObject”不是密钥va为密钥“myNewKey”符合lue编码
您能否建议我如何测试对象中是否存在该键,如果该键存在,则可以继续进行值更新以避免错误信息 ?
对不起,如果我在我的上下文解释有点困惑。
感谢
达里奥