0

谁能指导我如何创建将查询实体并返回符合我的条件的任何属性的获取请求。

这就是我所拥有的。我有一个具有 35 个属性的实体,所有属性都是浮点类型。我需要的是查看值 <= 零的实体的所有属性。

我知道如何返回属性的值,但不知道如何返回属性的名称。

谢谢,

4

1 回答 1

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"];

或类似的东西。

于 2009-09-04T08:19:58.293 回答