gpt4 book ai didi

objective-c - predicateWithBlock : passes NSDictionaryMapNode

转载 作者:太空狗 更新时间:2023-10-30 03:53:17 24 4
gpt4 key购买 nike

有时,当我尝试将 NSPredicateNSFetchRequest 一起使用时,它传递给 block 的 evaluatedObject 要么是 nil NSDictionaryMapNode 的实例,似乎没有人听说过。

显然这是有问题的,因为 NSDictionaryMapNode 不是公共(public) API 的一部分,并且没有我需要用于谓词的有用方法。

这是一个非常简单的例子:

fetchRequest.predicate = [NSPredicate predicateWithBlock:^BOOL(id evaluatedObject, NSDictionary *bindings) {
NSLog(@"%@", NSStringFromClass([evaluatedObject class]);
return YES;
}];

这里我期望 evaluatedObjectNSManagedObject 的子类实例,但它是 NSDictionaryMapNode 的实例.

我对此进行了进一步调查,似乎每次我在第一次执行提取后都会发生这种情况,这工作正常。我不知道这是否与释放有关或者如果我使用了两次我不应该使用的东西。

最佳答案

可能这是 uniquing 的结果由核心数据完成。请参阅我的评论。

尝试通过键值编码访问属性。

关于objective-c - predicateWithBlock : passes NSDictionaryMapNode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17002408/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com