我有属性id的实体。 我看到了例子:
var appDel:AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate
var context:NSManagedObjectContext = appDel.managedObjectContext!
var request = NSFetchRequest(entityName: "myentity")
request.returnsObjectsAsFaults = false
if let results = context.executeFetchRequest(request, error: nil) {
if results.count > 0 {
for result: AnyObject in results {
println(result.id)
}
}
但是对我来说它会返回错误:' AnyObject'没有名为' id'的成员 我怎样才能在swift的最新版Xcode中做到这一点?
答案 0 :(得分:1)
创建NSManagedObject子类。完成此操作后,您可以使用点语法而不是使用object for key来访问属性。可以找到有关NSManagedObject的Apple文档here以及有关创建子类here的信息。然后在for循环中,将对象强制转换为托管对象的子类类型。
var error: NSErrorPointer = nil
if !fetchedResultController.performFetch(error)
{
println("Unresolved error: \(error), \(error.debugDescription)")
}
let results = fetchedResultController.fetchedObjects as [YourSubclass]
for result in results {
println(result.id)
}