C.J*_*hns 10 iphone core-data ios
如果CoreData属性为空,我希望找到一种方法来检查.属性本身是二进制数据类型.如果属性为空,那么我可以告诉我的类下载并将一些数据保存到此属性中.
根据CoreData文档,您不应该继续查看对象是否存在.我想知道是否有可能做到这一点的方法?没有打破这个'法律'?
这是我第一次尝试使用CoreData.我之后将它添加到我的代码中,这稍微有些痛苦,但到目前为止,一切似乎都没问题.我只需要找出一种检查属性是否具有值的逻辑方法.如果没有,那么我需要下载并保存新数据,如果有,那么我只使用属性中的内容.
更新:
我刚刚在CoreData框架中找到了这个方法,我一直在阅读,虽然试图抓住这个.不确定它是否会有所帮助..你们觉得怎么样?
willAccessValueForKey:为键值观察访问通知提供支持.
- (void)willAccessValueForKey:(NSString*)key参数key其中一个接收者属性的名称.讨论请参阅didAccessValueForKey:了解更多详情.您可以使用键值nil调用此方法以确保已触发故障,如以下示例所示.
[aManagedObject willAccessValueForKey:nil];
不确定..我不理解的事情是提供对键值观察访问通知的支持.???
Jod*_*ins 11
该通知适用于何时访问该值.
如果我理解正确,您不希望看到实体是否存在,而是实体内的属性.所以,我假设你将它标记为可选属性.
假设您有一个名为rawData的二进制数据属性.如果要查找数据库中没有此属性的任何数据集的所有@"MyEntity"对象,则可以发出此获取请求.
NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"MyEntity"];
fetchRequest.predicate = [NSPredicate predicateWithFormat:@"rawData = nil"];
NSArray *results = [managedObjectContext executeFetchRequest:fetchRequest error:0];
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4720 次 |
| 最近记录: |