我在我的iOS应用程序中使用CoreData来持久化两种实体,每种实体都涉及一对多关系 - 实体A有一个实体B的数组(NSSet) .

到目前为止,我有一个TableView,当前显示所有实体A对象和每个对象的属性 . 我现在想要的是每个实体也显示每个实体A的实体B的数量 - 但是没有经过整个获取过程从CoreData数据库加载每个实体B - 我只想要实体B的数量 .

为了清楚起见,我只想知道每个实体A引用了多少实体B,我不想实际加载实体B实体或它们的任何数据 .

这可能吗?

我现有的代码将加载所有实体A实体和(不幸的是)它们的每个实体B集 . 如您所见,我最终使用的唯一值是NSSet中的实体B的数量 . 必须有一种方法只能检索所述计数而不是加载每个实体B实体?

let fetchRequest = NSFetchRequest()
let entity = NSEntityDescription.entityForName("EntityA", inManagedObjectContext: self.managedObjectContext!)
fetchRequest.entity = entity

fetchRequest.fetchBatchSize = 10

let sortDescriptor = NSSortDescriptor(key: "created", ascending: false)   
fetchRequest.sortDescriptors = [sortDescriptor]

let afetchedController = NSFetchedResultsController(fetchRequest: fetchRequest, managedObjectContext: self.managedObjectContext!, sectionNameKeyPath: nil, cacheName: nil) 

afetchedController.delegate = self

afetchedController!.performFetch()

...
...

let entityBs : NSSet = afetchedController!.objectAtIndexPath(indexPath).valueForKey("entityBs")!
let entityBcount = entityBs.count