Iphone Xcode 4核心数据:如何使用在数据模型编辑器中创建的获取属性

Iphone Xcode 4核心数据:如何使用在数据模型编辑器中创建的获取属性,iphone,objective-c,ios,core-data,xcode4,Iphone,Objective C,Ios,Core Data,Xcode4,如何在Xcode 4中实现获取的属性 以下是两个实体的示例,一本书和一个页面: 我按照此处的指导原则创建了一个fetched属性,该属性使用变量$FETCH\u source引用源实体中的值: 现在,一旦我保存了它并生成了源代码,我就会得到: // Book.h #import <Foundation/Foundation.h> #import <CoreData/CoreData.h> @class Pages; @interface Book : NSMan

如何在Xcode 4中实现获取的属性

以下是两个实体的示例,一本书和一个页面:

我按照此处的指导原则创建了一个fetched属性,该属性使用变量$FETCH\u source引用源实体中的值:

现在,一旦我保存了它并生成了源代码,我就会得到:

//  Book.h

#import <Foundation/Foundation.h>
#import <CoreData/CoreData.h>

@class Pages;

@interface Book : NSManagedObject {
@private
}
@property (nonatomic, retain) NSString * title;
@property (nonatomic, retain) NSNumber * pageCount;
@property (nonatomic, retain) Pages * pages;

@end

获取的属性“fetchLastPage”在哪里?如何在代码中使用它?

根据我所阅读的内容,您需要使用@dynamic关键字将获取的属性添加到生成的类中

// In your header
@property (nonatomic, retain) NSArray *fetchLastPage;

// In your class
@dynamic fetchLastPage;

仅供参考,这不是我正在使用的实际代码。我正在编写一个应用程序,其中我有多个数据存储(一个用于只读,一个用于用户保存的数据),我需要使用回迁属性,因为多个存储之间不保持关系:+1您的基本想法是正确的,但回迁属性始终属于NSArray类。我将编辑您的答案以反映这一点。我将补充说,您必须手动完成此操作,因为X4核心数据工具存在严重缺陷。在以前的版本中,它会自动添加fetchedProperty定义。@TechZen-您应该向Apple提交一份错误报告。谢谢大家,今天晚些时候我尝试一下后,我会接受这个答案。有人知道获取属性的好参考吗?我看了3本关于核心数据的不同书籍(可能是仅有的3本关于核心数据的书籍),但严重缺乏提及如何处理获取的属性和利用多个存储。我还没有看到任何例子说明如何使用获取的属性维护分布在多个存储区中的实体之间的松散关系。@pokstad--我知道早期版本中有一个这样做了。获取的属性没有那么复杂,它们只是获取的对象数组。唯一真正的问题是,只有当对象第一次出现故障时,才会运行获取。之后,您需要调用
refreshObject:mergeChanges:
以使其刷新。
// In your header
@property (nonatomic, retain) NSArray *fetchLastPage;

// In your class
@dynamic fetchLastPage;