Sorting 获取已排序的请求

Sorting 获取已排序的请求,sorting,core-data,Sorting,Core Data,哦,哦。。。 也许太晚了。。。但是我不能让这东西工作。 实际上,取回正在工作。。。但它并没有以任何方式排序!? “zaehler”是一个Int32属性-应该可以完美工作 我做错了什么 static func getAllMaterialSorted() -> [MaterialMO] { var result = [MaterialMO]() let moc = AppDelegate.managedObjectContext let fetchRequest:

哦,哦。。。 也许太晚了。。。但是我不能让这东西工作。 实际上,取回正在工作。。。但它并没有以任何方式排序!? “zaehler”是一个Int32属性-应该可以完美工作

我做错了什么

static func getAllMaterialSorted() -> [MaterialMO] {

    var result = [MaterialMO]()
    let moc = AppDelegate.managedObjectContext
    let fetchRequest: NSFetchRequest<MaterialMO> = MaterialMO.fetchRequest()

    let zaehler = NSSortDescriptor(key: "zaehler", ascending: false)
    let name = NSSortDescriptor(key: "name", ascending: true)

    fetchRequest.sortDescriptors = [zaehler]

    do {
        result = try moc!.fetch(MaterialMO.fetchRequest()) as! [MaterialMO]
    } catch {
        print ("Cannot fetch employees.Error \(error)")
        return result
    }
    return result
}
静态函数getAllMaterialSorted()->[MaterialMO]{
变量结果=[MaterialMO]()
让moc=AppDelegate.managedObjectContext
let fetchRequest:NSFetchRequest=MaterialMO.fetchRequest()
让zaehler=NSSortDescriptor(键:“zaehler”,升序:false)
let name=NSSortDescriptor(键:“name”,升序:true)
fetchRequest.sortDescriptors=[zaehler]
做{
结果=尝试moc!.fetch(MaterialMO.fetchRequest())作为![MaterialMO]
}抓住{
打印(“无法提取员工。错误\(错误)”)
返回结果
}
返回结果
}

已经晚了-您正在创建一个新的内联fetchRequest:
result=try moc!。fetch(MaterialMO.fetchRequest())
应该是
result=try-moc!。fetch(fetchRequest)
。您只需将两个排序描述符中的一个添加到数组中。