私はメソッドUser.updateMyObject(id: NSNumber, name: String)
を呼び出すNSUrlRequestを持っています。コアデータ:NSUrlRequest内で更新する正しい方法
static let appDelegate = UIApplication.shared.delegate as! AppDelegate
static let MOC = appDelegate.managedObjectContext
そしてオブジェクトを削除/作成/更新するためのいくつかのメソッド:オブジェクトUser
は静的な特性を有しています。
ここでは、MOC
を別のスレッドで使用しないでください。そして、NSUrlRequestが非同期に実行されることを知る限り、どうすればMyObject.updateMyObject(id: NSNumber, name: String)
に電話をかけることができますか?
私は時々エラーを取得:なぜperform
とperformAndWait
方法
static func updateMyObject(id: NSNumber, name: String) {
let request: NSFetchRequest<NSFetchRequestResult> = NSFetchRequest(entityName: "MyObject")
let resultPredicate = NSPredicate(format: "id = \(id)")
request.predicate = resultPredicate
do {
let result = try User.MOC.fetch(request).first as! MyObject
result.name = name
User.appDelegate.saveContext()
}
catch {
print("User.updateMyObject: error.")
}
}
こんにちはTomは答えをありがとう、非常に感謝しています。例を付けることができますか?私は、JSONの中にリクエストをパースするか、別の場所に追加するべきかどうか分かりません。 – Frederik
@FrederikNorlykEriksen詳細を追加 –