首页 文章

iOS核心数据:使用Foundation对象添加属性

提问于
浏览
0

我正在使用Core Data框架构建iOS应用程序 .

现在我已经熟悉了Core Data实体和关系,但我想知道是否有办法声明任何具有iOS Foundation框架对象的Core Data实体 .

例如,我希望Core Data实体具有NSSet实体,如:

Foo *foo = [NSEntityDescription insertNewObjectForEntityForName:@"Foo" inManagedObjectContext:managedObjectContext];
NSSet *set = foo.set;
for (NSString *string in set) {
    // do something
}

有没有办法使用Core Data框架实现这一目标?

1 回答

  • 0

    有一种方法可以做到这一点,但我不会告诉你,因为它听起来不是这个问题的正确解决方案 .

    您说您熟悉核心数据实体和关系,因此请使用它们!

    您可以为其提供一组 Bar 对象,而不是拥有一组字符串的 Foo 对象,其中每个 Bar 对象都有一个字符串属性 . 您可以通过使 Foo 实体与 Bar 具有级联删除规则的无序,多对关系来对核心数据进行建模,其中逆是与无效删除规则的一对一关系 .

    data model

    当您发现数据集的复杂查询可以使用NSFetchRequest轻松高效地执行时,您真的很感激在Core Data中明确建模您的数据 .

相关问题