2013-12-20 21 views
0

我使用优秀的开源JAGPropertyConverter将JSON响应反序列化为模型对象。是否可以使用JAGPropertyConverter将JSON字段映射到不同名称的属性?

它没有明确记录,但有没有办法我可以有一个名为,例如“userName”映射/反序列化到名为“名称”属性的JSON字段?

它利用键值兼容属性,所以如果我反序列化的JSON有一个名为“userName”的字段,那么香草用例会让我的模型拥有一个名为“userName”的属性。

回答

1

76829b4dca开始,答案是否定的。 JAGPropertyConverter调用JAGPropertyFinder将字典键映射到属性,并且这两个类都不允许您更改默认映射。

JAGPropertyConverter.m

- (void)setPropertiesOf:(id)object fromDictionary:(NSDictionary*)dictionary { 
    JAGProperty *property; 
    for (NSString *key in dictionary) { 
     property = [JAGPropertyFinder propertyForName: key inClass:[object class] ]; 
     ... 
    } 
    ... 
} 

JAGPropertyFinder.m

+ (JAGProperty *)propertyForName:(NSString *)name inClass:(__unsafe_unretained Class)aClass { 
    objc_property_t property = class_getProperty(aClass, [name UTF8String]); 
    ... 
} 
相关问题