Ios 加载核心数据时出错

Ios 加载核心数据时出错,ios,swift,core-data,Ios,Swift,Core Data,我尝试使用CoreData来保存一些数据。数据是从url下载的,它是一个Json,包含一组用户详细信息。我尝试解析json并将数据转换为我的NSManagedObjectModel子类,称为“User”。然而,应用程序没有任何解释就中断了。有人能告诉我我的代码出了什么问题吗 //var friend = [User]() func loadUpdateData(){ self.refreshControl?.beginRefreshing() let dir = NSSearchPathF

我尝试使用CoreData来保存一些数据。数据是从url下载的,它是一个Json,包含一组用户详细信息。我尝试解析json并将数据转换为我的NSManagedObjectModel子类,称为“User”。然而,应用程序没有任何解释就中断了。有人能告诉我我的代码出了什么问题吗

//var friend = [User]()

func loadUpdateData(){

self.refreshControl?.beginRefreshing()

let dir = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)[0] as NSString

let url = NSURL( string: "http://192.168.0.101/index.php?method=updateData&id=1" )

var request = NSMutableURLRequest(URL: url!, cachePolicy: NSURLRequestCachePolicy.ReloadIgnoringLocalCacheData, timeoutInterval: 10)
request.HTTPMethod = "POST"
request.HTTPBody = checkList!

var updateQueue = NSOperationQueue()
NSURLConnection.sendAsynchronousRequest(request, queue: updateQueue, completionHandler: { (response, recievedData, error) -> Void in

    if error == nil && (recievedData != nil) {

        let dataString = NSString(data: recievedData, encoding: NSUTF8StringEncoding)
        let readableData = dataString?.dataUsingEncoding(NSUTF8StringEncoding)
        var updatedFriendList = NSJSONSerialization.JSONObjectWithData(readableData!, options: NSJSONReadingOptions.MutableContainers, error: nil)! as [NSDictionary]

        dispatch_async(dispatch_get_main_queue(), {

            for (var index=0; index<updatedFriendList.count; index++) {
                User.insertNewUser(self.objectContext!, newUserDict: updatedFriendList[index])   **//it seems app crashes at this line is being executed.**
            }
            self.objectContext?.save(nil)

            self.refreshControl?.endRefreshing()
        })

    }else{
        dispatch_async(dispatch_get_main_queue(), {
            let _ = self.refreshControl?.endRefreshing()
        })
    }
})    
}
--更新错误快照-- libsystem\u kernel.dylib`\u pthread\u kill: 0x19317b268:movz x16,#328 0x19317b26c:svc#128 0x19317b270:b.cc 0x19317b288__pthread_kill+32 0x19317b274:stp fp,lr,[sp,#-16]! 0x19317b278:mov fp,sp 0x19317b27c:bl 0x19316259c;塞罗鲁诺坎塞尔 0x19317b280:mov sp,fp 0x19317b284:ldp fp,lr,[sp],#16

0x19317b288:ret 2015-04-09 22:47:27.488激励[355:78244]-[entientity.User setNumOfTarget:]:发送到实例0x1702c1c70的选择器无法识别 2015-04-09 22:47:27.492激励[355:78244]*由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:'-[entitive.User setNumOfTarget:::]:未识别的选择器发送到实例0x1702c1c70' *第一次抛出调用堆栈: (0x18229e59c 0x1929f40e4 0x1822a5664 0x1822a2418 0x1821a6b6c 0x1000a2678 0x10009b79c 0x10009c294 0x181c86f34 0x183157508 0x1830a8c94 0x18309861c 0x18315a26c 0x1004e0df0 0x1004eb854 0x1004e4120 0x1004ed75c 0x1004eef18 0x1932152e4 0x193214fa8) libc++abi.dylib:以NSException类型的未捕获异常终止
(lldb)

以下是解释:

Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[Incentive.User setNumOfTarget:]: unrecognized selector sent to instance 0x1702c1c70' 

这意味着用户类不知道setNumOfTarget:。检查您的CoreData模型是否正确定义了它。

好吧,在调试器中运行时,它应该在某个地方中断,因此这是您的第一条线索。您可以定义“应用中断”吗?断点?症状?@JohanKool,断点不停在特定行。我已经在应用程序中断时更新了声明。请参阅以上更新的声明。此外,我试图逐行执行代码,似乎错误发生在以下行:for(var index=0;index实际上我的“User”类没有一个名为“setNumOfTarget”的属性。它确实有一个名为“numOfTarget”的属性.它们有关系吗?如果有,它们之间的关系是什么?你能解释一下CoreData模型应该如何定义类吗?谢谢!我明白了,你是对的。这真的是因为我的粗心!我在模型中取错了名字…谢谢。
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[Incentive.User setNumOfTarget:]: unrecognized selector sent to instance 0x1702c1c70'