美文网首页
类似JsonModel,NSDictionary转化对象

类似JsonModel,NSDictionary转化对象

作者: 哭泣的琉璃贝 | 来源:发表于2017-03-27 00:00 被阅读207次
    #import <Foundation/Foundation.h>
    
    #define MGInvalidServerDataException @"MGInvalidServerDataException"
    
    @interface MGDataModel : NSObject
    
    +(instancetype)modelObjectFromDictionary:(NSDictionary*)dictionary;
    -(instancetype)initWithDictionary:(NSDictionary *)dictionary;
    
    @end
    

    #import "MGDataModel.h"
    
    @implementation MGDataModel
    
    +(instancetype)modelObjectFromDictionary:(NSDictionary *)dictionary
    {
    return [[[self class] alloc] initWithDictionary:dictionary];
    }
    
    -(instancetype)initWithDictionary:(NSDictionary *)dictionary
    {
    if ((self=[super init])&&![dictionary isKindOfClass:NSNull.class]) {
        for (NSString* key in dictionary.keyEnumerator) {
            id value=dictionary[key];
            if (![value isKindOfClass:[NSNull class]]) {
                SEL selector=NSSelectorFromString(key);
                if ([self respondsToSelector:selector]&&![NSObject instancesRespondToSelector:selector]) {
                    @try {
                        [self setValue:dictionary[key] forKey:key];
                    } @catch (NSException *exception) {
                        
                    }
                }
            }
        }
    }
    return self;
    }
    
    @end

    相关文章

      网友评论

          本文标题:类似JsonModel,NSDictionary转化对象

          本文链接:https://www.haomeiwen.com/subject/qhjlottx.html