jjzjj

NSFetchRequest

全部标签

ios - 在 CoreData 中设置 NSFetchRequest 的 fetchOffset 结果不一致

我有下面的方法可以取出一页CoreData实体。当我为start传递一个值时,我得到了不一致的结果。有时它会像我预期的那样进行分页,有时它真的不会。它似乎从我请求的地方附近的某个地方获得结果,但经常与其他结果交错或跳过一些。我已经通过在每次请求特定页面时记录所有结果并将结果页面与整个列表进行比较来证明这一点。调试日志如下关于如何/为什么会发生这种情况有什么想法吗?+(NSArray*)fetchMessagesForUser:(int32_t)userIdconnectionUserId:(int32_t)connectionUserIdsortASC:(BOOL)sortASCsta

ios - CoreData 有序关系 - 使用 NSFetchRequest 进行批处理

背景-批量无故障:NSFetchRequest允许批处理unfault-例如,使用1000个结果的查询,它会把所有结果都作为错误,然后它会一次unfaultX个对象(即索引0-20,然后是21-40,等等)当在NSFetchResultsController中用于UITableViewDataSource时,这种行为非常好,它允许快速UI滚动,因为它不会一个接一个地显示对象。现在我的问题是:我正在为对象列表使用有序关系,比方说帖子。由于Post可能出现在我的模型的很多列表中,我无法将其索引存储在Post实体的每个列表中并将其用作参数用于排序结果。至于目前我还没有找到NSFetchReq

ios - 如何在一个 NSFetchRequest 中获取核心数据关系?

我有一个核心数据应用程序,其模型设置如下图所示:关系是这样设置的:类别>子类别>项目现在,是否可以在一次提取中从具有相同属性categoryName的Subcategory和Item实体中获取对象?我认为这可以通过使用关系来完成,但是我使用的代码不起作用,它是:letfetchNote=NSFetchRequest(entityName:"Category")fetchNote.predicate=NSPredicate(format:"ANYsubcategory.name==%@ANDitem.name==%@","Badaue","Badaue")letnotes=try!app

ios - 如何取消设置 NSFetchRequest 的 fetchLimit?

documentation对于Cocoa的NSFetchRequestfetchLimit属性说:Thefetchlimitspecifiesthemaximumnumberofobjectsthatarequestshouldreturnwhenexecuted.Ifyousetafetchlimit,theframeworkmakesabestefforttoimproveefficiency,butdoesnotguaranteeit.但是,它没有告诉您如果已经设置了提取限制,如何取消限制请求应返回的最大对象数。在我的NSFetchRequest上使用fetchLimit限制对象

ios - 无法将类型 'NSFetchRequest<NSFetchRequestResult>' 的值转换为指定类型 'NSFetchRequest<T>'

我想使用iOS10中引入的新核心数据API。@available(iOS10.0,*)openclassfuncfetchRequest()->NSFetchRequest我创建了通用函数来获取各种对象:funcgetAllEntities(ofTypetype:T.Type,success:@escaping([T])->())throws->[T]{letfetchRequest:NSFetchRequest=T.fetchRequest()letasyncFetchRequest=NSAsynchronousFetchResult(fetchRequest:fetchReques

swift - NSFetchRequest as entityName 给出错误 "use of undeclared type"

我在Swift2.1和Xcode7.2中使用核心数据此代码给我一个无法找到实体名称的错误。这因为[Company]不起作用。我有一个具有此名称的实体。letfetchRequest=NSFetchRequest(entityName:"Company")do{varresult=tryself.moc.executeFetchRequest(fetchRequest)as![Company]if(result.count>0){companyName?.stringValue=result[0].valueForKeyPath("name")as!String//success...}

iphone - 如何限制 NSFetchRequest 的结果数?

我想在我的iOS应用程序中添加“最近20项”功能。我使用核心数据和NSFetchRequest。如何将结果数限制为20以实现此目的?提前致谢!开。 最佳答案 设置fetchLimitNSFetchRequest的[requestsetFetchLimit:20]; 关于iphone-如何限制NSFetchRequest的结果数?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/50

ios - Swift 3 - NSFetchRequest 不同的结果

感谢任何帮助。Xcode自动更新到8...我的目标是IOS9.3所有的代码都转换了,但现在有一件事坏了,我在类似的问题中尝试了各种建议!我以前是的提取请求现在中断了。我的目标是获得一个不同的列表。应用崩溃在线:letresults=trycontext.fetch(fetchRequest)控制台中的错误描述为:Couldnotcastvalueoftype'NSKnownKeysDictionary1'(0x10fd29328)to'MyApp.BodyType'(0x10eebc820).这是函数funcgetBodyTypes(){letcontext=ad.managedObj

swift - Swift 中 NSFetchRequest 的多个 NSPredicates?

目前,我有一个简单的NSFetchRequest和一个关联的NSPredicate。但是,我希望有一种方法可以附加多个谓词。我看过ObjectiveC中的示例,但没有看到Swift中的示例。你能定义一个NSPredicate的列表或以某种方式将多个NSPredicate对象附加到单个NSFetchRequest吗?谢谢! 最佳答案 您可以使用“NSCompoundPredicate”。例如:letconverstationKeyPredicate=NSPredicate(format:"conversationKey=%@",con

ios - 核心数据 : Quickest way to delete all instances of an entity

我正在使用CoreData在本地保存来自Web服务调用的结果。Web服务返回完整的对象模型,比如说“汽车”——可能是大约2000辆(我不能让Web服务返回少于1辆或所有汽车的任何东西。下次我打开我的应用程序时,我想通过再次调用所有汽车的Web服务来刷新CoreData持久副本,但是为了防止重复,我需要先清除本地缓存中的所有数据。是否有更快的方法来清除托管对象上下文中特定实体的所有实例(例如“CAR”类型的所有实体),或者我是否需要查询它们调用,然后遍历结果以删除每个实例,然后保存?理想情况下,我可以说删除所有实体为Blah的位置。 最佳答案