Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cocoa NSEntityDescription的名称有问题_Cocoa_Core Data_Nspredicate_Nsmanagedobject - Fatal编程技术网

Cocoa NSEntityDescription的名称有问题

Cocoa NSEntityDescription的名称有问题,cocoa,core-data,nspredicate,nsmanagedobject,Cocoa,Core Data,Nspredicate,Nsmanagedobject,这个问题从一个侧面引出 当我运行以下代码行时: NSEntityDescription *outputCellEntityDescription = [NSEntityDescription entityForName:@"OutputCell" inManagedObjectContext:[[self document] managedObjectContext]];

这个问题从一个侧面引出

当我运行以下代码行时:

NSEntityDescription *outputCellEntityDescription = [NSEntityDescription entityForName:@"OutputCell"
                                                               inManagedObjectContext:[[self document] managedObjectContext]];
我得到以下错误:

HIToolbox: ignoring exception '+entityForName: could not locate an NSManagedObjectModel for entity name 'OutputCell'' that raised inside Carbon event dispatch
我关心的是错误中实体名称末尾似乎出现了额外的上扬。有人能解释一下为什么会发生这种情况,或者我如何调试它吗。代码在第一次运行时正常运行,但在获取一些核心数据后,代码似乎中断了。可能是内存泄漏或类似问题吗


谢谢你的帮助。

没有额外的上涨。您只需要嵌套引用:

[']+entityForName:找不到 实体名称的NSManagedObjectModel “OutputCell”[']

此位是异常返回的字符串。它又有
OutputCell
单引号。不过,这看起来确实令人困惑。如果你以前没看过,很容易错过

但是,不确定是什么导致了错误

编辑: 作为调试步骤,我建议在您的模型上记录调用
-[NSManagedObjectModel entities]
的结果,以查看它是否确实包含
OutputCell
实体


对您的问题的一个简单解释是,在保存后,您会以某种方式切换模型。可能是您意外地指定了不同的模型,也可能是您取消了现有的模型。要测试这一点,您应该记录NSManagedObjectModel实例的地址,并查看其是否更改。

谢谢,我应该自己发现了该实例。还没有,我已经尝试了几天,但我正在慢慢实现。这似乎与核心数据模型在获取时在某个地方被破坏有关。您需要小心打勾。我怀疑你会对上一个问题有更多的答案,因为人们会认为它已经解决了。这个项目有实际的碳元素吗?我没有添加任何元素,但我引用了一些开源框架。不确定他们是否有。这只是一个奇怪的错误。我还没有看到核心数据、HIToolbox和这样的碳排放事件的混合。