目标C:在非结构或联合的东西中请求成员XXX.(核心数据)

Zhe*_*hen 1 cocoa-touch core-data objective-c nsmanagedobject

我在实现核心数据时遇到了这个错误.

我创建了一个实体'FlashCard',其属性为'question'和'answer'.这两个属性都是NSString类型.

在将新对象插入NSManaged Object后,我尝试设置2个属性,如下所示.

 NSManagedObject *newCard = [NSEntityDescription insertNewObjectForEntityForName:@"FlashCard" inManagedObjectContext:self.managedObjectContext];
 newCard.question = thisQuestion;
 newCard.answer = thisAnswer;
Run Code Online (Sandbox Code Playgroud)

但是当我尝试编译代码时,我遇到错误"请求成员'问题'在某些东西不是结构或联合'.我得到相同的错误newCard.answer行.

任何关于如何解决这个问题的建议非常感谢!

con*_*gan 5

你的newCard实例应该是FlashCard不是NSManagedObject; 否则,编译器将不知道newCard具有属性questionanswer.

FlashCard *newCard = (FlashCard *)[NSEntityDescription insertNewObjectForEntityForName:@"FlashCard" inManagedObjectContext:self.managedObjectContext];
newCard.question = thisQuestion;
newCard.answer = thisAnswer;
Run Code Online (Sandbox Code Playgroud)