Ответ 1
Используйте метод executeFetchRequest
для NSManagedObjectContext при выполнении NSFetchRequest.
Изменить Swift 3. Для Swift 3 используйте:
let result = try managedContext.fetch(fetchRequest)
Я создаю небольшое приложение, чтобы узнать многие из многих отношений в CoreData. Однако, используя приведенный ниже код, я получаю сообщение об ошибке из моего NSFetchResult в мой класс Entity ( "Groepering" ):
Я не вижу разницы с образцами, которые я нашел в Интернете, по сравнению с моим проектом, почему литье все еще не работает?
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let managedContext = appDelegate.managedObjectContext
let fetchRequest : NSFetchRequest = NSFetchRequest(entityName: "Entity")
do {
let fetchResults = try managedContext.executeRequest(fetchRequest)
let groeperingen = fetchResults as! [Entity]
// Here I get the Error: ^
} catch {
print("Error")
}
Используйте метод executeFetchRequest
для NSManagedObjectContext при выполнении NSFetchRequest.
Изменить Swift 3. Для Swift 3 используйте:
let result = try managedContext.fetch(fetchRequest)
Недавно я преобразовал свой код в Swift 3 и столкнулся с этой же ошибкой, хотя и не из-за опечатки. Кажется, что новый эквивалентный вызов функции let fetchResults = try managedContext.fetch(fetchRequest)
.