0

我是第一次使用核心数据并尝试学习核心数据。

从具有两个属性的员工示例开始。1.姓名 2.工资

现在我完成了从数据库加载数据所需的所有必要事情。我得到了我之前保存的值。

但问题是我只能保存员工表的一个属性。第一次我只保存了员工的姓名。然后当我成功时,我尝试用薪水保存名称然后我得到 [NSManagedObject setSalary:]: unrecognized selector sent to instance 0x7472d80 异常。

这是我的代码。

   - (IBAction)setBtnTouched:(id)sender {


     Employee *newEmp = [NSEntityDescription
                insertNewObjectForEntityForName:@"Employee"
                inManagedObjectContext:context];

    [newEmp setName:self.textFieldName.text];

    [emp addObject:newEmp];

/* this is the code that i added after success in saving for employee name.*/
    //[newEmp setSalary:self.textFieldSal.text];
    //[emp addObject:newEmp];
*/
     BOOL isSaved = [context save:nil];
  NSLog(@"is saved %d",isSaved);

NSLog(@"emp :%@",emp);

}

我不明白我哪里出错了,因为两者都是同一实体的属性。

请写信给这个线程。

编辑:屏幕截图 在此处输入图像描述 问候,paggyyy123

4

1 回答 1

0

确保您的NSManagedObject子类包含正确的属性名称访问器。

// Employee.m
@dynamic Salary

另外,请注意,您要将新员工添加到您的数组中emp两次。一旦属性完成,这两个将是相同的。

于 2013-04-19T09:10:21.870 回答