Swift:将CoreData作为数组获取 [英] Swift: Fetch CoreData as Array

查看:80
本文介绍了Swift:将CoreData作为数组获取的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想获取sqlite表中的所有保存的数据。

I want to fetch all Saved Data in the sqlite table.

我现在正在这样做:

 func GetAllData() -> NSArray
{
    var error : NSError? = nil;
    var request : NSFetchRequest = NSFetchRequest(entityName: "Locations");
    let result : [AnyObject] = managedObjectContext!.executeFetchRequest(request, error:&error)!;
      var elements : NSMutableArray = NSMutableArray();
    for fetchedObject in result
    {
        elements.addObject(fetchedObject[0]);
    }
    print(elements);
    return elements;
}



我没有问题在Objective-C中获取数据,但在swift我不得到它!

I have no problems to fetch Data in Objective-C but in swift I dont get it!

数据的保存工作正常。我有两行名称和类别。

The saving of the data works fine. I have two rows "Name" and "Category". How can I show all saved data?

推荐答案

您应该将所有的对象从CoreData加载到NSManaged对象的Array / Dict。

You should load all your Objects from CoreData into an Array/Dict of NSManaged Objects.

例如:

var locations  = [Locations]() // Where Locations = your NSManaged Class

var fetchRequest = NSFetchRequest(entityName: "Locations")
locations = context.executeFetchRequest(fetchRequest, error: nil) as [Locations]

// Then you can use your properties.

for location in locations {

  print(location.name)   

}

这篇关于Swift:将CoreData作为数组获取的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆