我读了很多关于核心数据的书..但是什么是对实体类型进行计数的有效方法(比如SQL可以使用SELECT count(1)…).现在,我刚刚解决了这个任务,用NSFetchedResultsController Select 全部,并得到NSArray的计数!我相信这不是最好的方式...

推荐答案

我不知道使用NSFetchedResultsController是否是实现目标的最有效方法(但可能是).获取实体实例计数的显式代码如下:

// assuming NSManagedObjectContext *moc

NSFetchRequest *request = [[NSFetchRequest alloc] init];
[request setEntity:[NSEntityDescription entityForName:entityName inManagedObjectContext:moc]];

[request setIncludesSubentities:NO]; //Omit subentities. Default is YES (i.e. include subentities)

NSError *err;
NSUInteger count = [moc countForFetchRequest:request error:&err];
if(count == NSNotFound) {
  //Handle error
}

[request release];

Objective-c相关问答推荐

Objective-C NSMutableArray 在枚举时发生了变异?

在 iOS 7 上,如果最终包含在选项卡栏控制器中,则使用工具栏推送控制器会留下不可用空间的间隙

将 NSArray 保存到 NSUserDefaults 并在 NSMutableArray 中获取它

在从 UIViewController 调用的非保留完成中引用 self 时,weakSelf/strongSelf 舞蹈真的有必要吗?

Objective-C 中的正式协议和非正式协议有什么区别?

从 NSError 返回 NSString

何时使用静态字符串与 #define

判断对象是 NSArray 还是 NSDictionary

如何在另一个视图中获取视图的框架?

iOS 中 textField 上的Electron邮件验证

dispatch_semaphore_dispose 上的 EXC_BAD_INSTRUCTION(代码=EXC_I386_INVOP,子代码=0x0)

有没有一种简单的方法可以将 ISO8601 时间戳转换为格式化的 NSDate?

UITextView 禁用文本 Select

动画 UIButton 状态变化

反转 NSString 文本

Xcode 在您的 keys 串中找不到此配置文件的有效私有证书/有效密钥对

-[MyClassName copyWithZone:] 无法识别的 Select 器发送到实例

发送通知到山狮通知中心

NSMutableArray addObject 不起作用

以编程方式设置 UIView 的自动调整大小掩码?