我正在處理帶擴展名的核心數據,並且在下面有錯誤。帶擴展名的Swift3 CoreData
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'executeFetchRequest:error: is not a valid NSFetchRequest.'
它在主機上的應用程序仍然運作良好,但是在具有相同代碼的擴展崩潰。
調試器停止時執行managedObjectContext.fetch(請求)
func getDataString() -> String {
var result = ""
let entityDescription = NSEntityDescription.entity(forEntityName: "DataString", in: managedObjectContext)!
let request : NSFetchRequest<NSFetchRequestResult> = DataString.fetchRequest()
request.entity = entityDescription
do {
let results = try managedObjectContext.fetch(request)
printDebug(message: "\tDataString Count : \(results.count)")
if results.count > 0 {
let row = results[0] as! NSManagedObject
result = row.value(forKey: "data") as! String
}
} catch let error {
printDebug(message: "ERROR : getDataString fetch")
setErrorLog(errorText: "\(error)")
}
return result
}
這種崩潰即使與try-catch代碼編寫。 請幫忙。
首先檢查實體名稱和request.entity是否正在獲取。 –
@ChandanJee檢查它。實體名稱沒有問題,這在主機應用程序中效果很好。該錯誤只發生在擴展名上。 – Minjee