2016-10-16 33 views

回答

1

抓住appDelegate對象和context

let appDelegate = UIApplication.shared.delegate as! AppDelegate 
let context = appDelegate.persistentContainer.viewContext 

在覈心數據添加記錄

let user = NSEntityDescription.insertNewObject(forEntityName: "UsersClass", into: context) as! UsersClass 
user.userName = "Rajan" 
appDelegate.saveContext() 

擷取

let fetchRequest:NSFetchRequest<UsersClass> = UsersClass.fetchRequest() 

然後執行這個請求

do { 
    let searchResults = try context.fetch(fetchRequest) 
    for trans in searchResults { 
     print(trans.username!) 
    } 
} 
catch { 
    //Handle error 
} 

UsersClass + CoreDataProperties.swift

import Foundation 
import CoreData 

extension UsersClass { 

    @nonobjc public class func fetchRequest() -> NSFetchRequest<UsersClass> { 
     return NSFetchRequest<UsersClass>(entityName: "UsersClass"); 
    } 

    @NSManaged public var userName: String? 

} 

這裏是我提出的Sample

+0

不,它不工作 – Srini

+0

更新,因爲你說沒有運氣... – Srini

+0

***由於未捕獲的異常'NSInvalidArgumentException',原因:'executeFetchRequest:錯誤:不是有效的NSFetchRequest終止應用程序。 ***第一擲調用堆棧: ( \t 0的CoreFoundation 0x00000001105e534b __exceptionPreprocess + 171 \t 1 libobjc.A.dylib 0x000000010d51121e objc_exception_throw + 48 \t 2 CoreData 0x000000010d9d4f6c - [的NSManagedObjectContext executeFetchRequest:錯誤:] + 4972 \t 3 libswiftCoreData .dylib 0x000000010fb37e78 – Srini