【发布时间】:2016-09-16 07:05:35
【问题描述】:
我在我的项目中使用了通用的 CoreData 查询方法。
func query(table: String, searchPredicate: NSPredicate) -> [AnyObject]
{
let context = app.managedObjectContext
let fetchRequest = NSFetchRequest(entityName: table)
fetchRequest.predicate = searchPredicate
let results = try! context.fetch(fetchRequest)
return results
}
在 Swift 3 中这不起作用。我在 Apple 的网站上找到了这个:
func findAnimals()
{
let request: NSFetchRequest<Animal> = Animal.fetchRequest
do
{
let searchResults = try context.fetch(request)
... use(searchResults) ...
}
catch
{
print("Error with request: \(error)")
}
}
使用 Apple 示例,我如何将 Animal 作为参数传递给方法以使 findAnimals 更通用?
【问题讨论】:
标签: swift3 nsfetchrequest