如何加载实体/属性的所有实例?
Posted
技术标签:
【中文标题】如何加载实体/属性的所有实例?【英文标题】:How to load all instances of entity / property? 【发布时间】:2011-01-11 15:22:04 【问题描述】:我在 TableView 中有一些数据(从 coreData 加载),现在我想将这些数据上传到网络服务器。
在此之前,我想将所有数据保存到 *.txt 文件中。
如何将实体/属性的所有实例加载到可变数组中?
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Event" inManagedObjectContext:self.managedObjectContext];
[fetchRequest setEntity:entity];
[fetchRequest setFetchBatchSize:20];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"barCode" ascending:NO];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
谢谢, 刷子51
编辑 1: 你能给我一点帮助(我不想要所有数据,只是属性“barCode”),现在我有这个代码:
NSManagedObjectContext *moc = [self managedObjectContext];
NSFetchRequest *req = [[NSFetchRequest alloc] init];
[req setEntity:[NSEntityDescription entityForName:@"Event" inManagedObjectContext:moc]];
[req setIncludesPropertyValues:NO];
NSError *error;
NSArray *codes = [moc executeFetchRequest:req error:&error];
[req release];
for (NSManagedObject *Event in codes)
NSLog(@"there it is : ------------> %@", codes);
NSLog(@"barcodes ------------------> %@", [[managedObject valueForKey:@"barCode"] description]);
如何只输出属性“barCode”的实例??
【问题讨论】:
【参考方案1】:感谢您的回答, 这是我的代码:
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Event" inManagedObjectContext:self.managedObjectContext];
[fetchRequest setEntity:entity];
[fetchRequest setFetchBatchSize:20];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"barCode" ascending:NO];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
我没有谓词...谓词是为了什么?
【讨论】:
【参考方案2】:如果您在没有谓词的实体上执行获取请求,您将获得所有实例。
【讨论】:
以上是关于如何加载实体/属性的所有实例?的主要内容,如果未能解决你的问题,请参考以下文章
EF6:如何在 Select 中包含子属性,以便创建单个实例。避免“相同的主键”错误
如何使用代码优先实体框架在 ASP.Net MVC3 中重新加载多对多导航属性
如何在 Play Framework v1.2.7 中配置带有动态 id 属性的 POST 路由,该属性将加载 JPA 实体