核心数据 - 实体帮助

时间:2011-07-29 12:54:54

标签: objective-c core-data

我目前收到错误 -

* 由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'+ entityForName:找不到实体名称的NSManagedObjectModel'Invoices''

这是怎么发生的:

我设置了一个名为“朋友”的实体和属性。我成功使用获取请求来获取并显示我想要的数据。对我来说,下一个发展阶段是添加另一个名为“发票”的实体,其中包含各种属性。我将其添加到datamodel并添加了一个新的获取请求来反映这一点。

我曾尝试重置iPhone模拟器,并添加了新版本,更改了当前版本,并更改​​回来尝试清除错误,但没有任何乐趣。

当应用程序到达这行代码时,应用程序崩溃了:

NSEntityDescription *entity = [NSEntityDescription entityForName:@"Invoices" inManagedObjectContext:self.managedObjectContext];
    [fetchRequest setEntity:entity];

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

检查构建目标以确保您使用的是您认为正在使用的模型文件。

有时,更改模型文件时,旧的编译.momd文件将不会从模拟器中删除。完全删除模拟器上的应用程序,对项目进行清理并重建通常可以解决问题。

然而,此错误的最常见原因是简单的拼写错误,例如将Invoice用于Invoices,反之亦然。