我目前正在使用Swift进行Core Data的第一步。 尽管我对Core Data有相当多的经验,但我对Swift几乎没有。
这就是我想要做的事情:创建一个函数,用于计算实体名称中实体的记录数。
这样的事情:
func countEntity (name:String) -> Int {
var theNumberOfRecords:Int
let fetchRequest = NSFetchRequest(entityName:name)
// What I have tried at this point only gives error messages …..
return theNumberOfRecords
}
它不应该是火箭科学。但经过各种试验和错误后,我无法做出一些工作。 我该如何编写必要的代码?我认为它不应该只是几行。我在Objective C中的那一行是6行。
答案 0 :(得分:1)
获取获取请求将返回的对象数
与countForFetchRequest()
:
func countEntity (name:String, context : NSManagedObjectContext) -> Int {
let fetchRequest = NSFetchRequest(entityName:name)
var error : NSError?
let theNumberOfRecords = context.countForFetchRequest(fetchRequest, error: &error)
if theNumberOfRecords == NSNotFound {
println("Error: \(error?.localizedDescription)")
}
return theNumberOfRecords
}
如果出现错误,countForFetchRequest()
会返回
NSNotFound
你必须决定如何处理这种情况。