2009-09-04 7 views
0

エンティティにクエリを行い、条件を満たす任意のプロパティを返すフェッチ要求の作成方法を教えてもらえますか。コアデータ:値に応じたプロパティを返す

ここに私のものがあります。私は35のプロパティを持つエンティティを持っていますが、すべて浮動小数点型です。 私が必要とするのは、値が< = 0であるエンティティのすべてのプロパティを表示することでした。

プロパティの値を返す方法は知っていますが、プロパティの名前を返す方法はわかりません。

ありがとう、

答えて

0

CoreDataはプロパティを返しません。エンティティを返します。次にエンティティがプロパティを持ちます。そのような

(。。次は、メモリから実行擬似コードでそれに応じて扱う)

NSString *query = @"(property1 <= 0) && (property2 <= 0)"; 
NSPredicate *predicate = [NSPredicate predicateWithFormat:query]; 
NSEntityDescription *entity = [NSEntityDescription entityDescriptionForName:@"Entity" inManagedObjectContext:context]; 
NSFetchRequest *fetch = [[NSFetchRequest alloc] init]; 
[fetch setEntity:entity]; 
[fetch setPredicate:predicate]; 
NSError *error = nil; 
NSArray *entities = [context executeFetchRequest:fetch error:&error]; 
// Let's just assume we got one 
NSManagedObject *obj = [entities objectAtIndex:0]; 
float value = [obj valueForKey:@"property1"]; 

か何か:いずれの場合では、あなたはこのような何かをする必要があると思います。

関連する問題