coredataに保存したデータの件数を取得して、その数を配列に入れたいのですが、上手くいきません。
swift
1func numberOfDataFromEntity(entityName: String, managedObjectContext: NSManagedObjectContext) -> Int { 2 3 let request = NSFetchRequest<NSFetchRequestResult>() 4 request.entity = NSEntityDescription.entity(forEntityName: "Entity", in: managedObjectContext) 5 request.includesSubentities = false 6 7 do { 8 let count = try managedObjectContext.count(for:request) 9 return count 10 } catch let error as NSError { 11 print("Error: (error.localizedDescription)") 12 return 0 13 } 14}
アドバイス頂けますでしょうか。
「その数を配列に入れたい」のはわかりますが、提示されているソースは件数を返すだけすの関数ですよね?(配列に入れるかどうかはその戻り値を受け取ってからの話ですよね?)であれば、配列云々は蛇足かなと思います。
ご回答ありがとうございます。勉強不足ですみませんが、戻り値を受け取るにはどうしたらいいのでしょうか。
let number = numberOfDataFromEntity(entityName: "...", managedObjectContext: ...)
と書けば関数の戻り値を受け取れますが、そういう意図で質問されてますか?
もともとの質問で「上手くいきません」と言っているのは、何がどう上手くいかないのでしょうか?
①件数が0件になってしまう
②件数は正しく取れているが、配列に入れられない
のどちらかでしょうか?