1

我想从当前实体的字段中获取相关实体的 ID。我怎样才能做到这一点?

例如,假设我有两个实体类。CompanyEmployeeCompanyEmployee设置。使用 Core Data,我将这样做是为了从公司那里得到它。

TTCompany* company = <get company>
TTEmployee* employee = [[company employees] anyObject];
id employeeID = employee.objectID;

我想要得到的只是employeeID. 我现在不需要加载员工对象,因为如果需要,我稍后会解决它们。显然,当前公司对象具有员工的 ID。我认为有一种方法可以在不获取任何数据的情况下获得它。

有没有更好的方法在不加载对象的情况下获取 ID?

4

1 回答 1

0

如果他们有关系,而不是从公司到员工,您可以在具有给定公司的员工上构建获取请求。然后在执行之前将返回结果类型设置为 NSManagedObjectID。

我在没有测试的情况下写了这个,并且有点冗长以使概念更清晰。

NSFetchRequest *myFetchRequest =[[NSFetchRequest alloc] init];
myFetchRequest.entity=<your employee description>;
myFetchRequest.predicate=[NSPredicate predicateWithFormat:@"(company==%@)",yourCompany];
myFetchRequest.setResultType=NSManagedObjectIDResultType;

// execute fetch and the rest....
于 2012-08-23T13:07:02.447 回答