从CoreData

时间:2016-10-18 17:40:05

标签: ios objective-c json core-data

我不知道标题是否与问题完全相符,但如果您觉得它遗漏了某些内容,请编辑问题。
我想以特定格式发送参数,例如{ {1}}到JSON以便将数据保存在服务器上 我已将AFNeworking命名为NSArray,并且我将其加载来自CoreData的值为fetchedDX,这样我就可以获得正确的值{I}在一个地方使用它计数它给了我正确的数量。这是我准备发送的硬编码NSDictionary:

fetchedDX = [Diagnoses MR_findAllWithPredicate:predicate];

此处NSDictionary *superBillData = @{ @"appointmentID": @"ABC", @"patientID": @"ABC", @"createdBy": @"ABC", @"lastChangedBy": @"ABC", @"Diagnoses":@[ @{ @"Code":@"hello world", @"shortDescription": @"my@you.com" }, @{ @"Code":@"hello 2", @"shortDescription": @"Lorem Ipsum" }, ]}; 键是发送多个对象的键。现在我在Diagnoses数组中提供了这些数据,因为核心数据给了我但我不知道如何制作动态fetchedDX,因为此数组的计数可以是1或更多一。因此,基于我创造的每一个价值:

NSDictionary

以下是我的实体的图片:
enter image description here
任何想法如何实现?

1 个答案:

答案 0 :(得分:1)

我认为CodeshortDescriptionDiagnoses实体的属性。在Diagnoses.h声明实例方法- (NSDictionary *)dictionary;并在Diagnoses.m文件中执行此操作。

- (NSDictionary *)dictionary {

    NSArray *keys = @[@"Code", @"codeDescription"];
    NSDictionary *dict = [self dictionaryWithValuesForKeys:keys];

    return dict;
}

然后在准备参数字典的地方将代码更改为此。

NSMutableArray *diagnosesArray = [NSMutableArray array];

    for (Diagnoses *obejct in fetchedDX) {
        [diagnosesArray addObject:[obejct dictionary]];
    }

    NSDictionary *superBillData = @{
                                    @"appointmentID": @"ABC",
                                    @"patientID": @"ABC",
                                    @"createdBy": @"ABC",
                                    @"lastChangedBy": @"ABC",
                                    @"Diagnoses":diagnosesArray};