1

コアデータを使用して保存されたオブジェクトのリストを取得しようとしています。プロジェクトを作成するときにXcodeによって行われたデフォルト設定に変更はありません。コアデータを使用してフェッチすると「認識できないセレクタエラー」が発生しますか?

NSManagedObjectContext * context = [[NSApp delegate] managedObjectModel]; 
    NSFetchRequest * fetchRequest = [[NSFetchRequest alloc] init]; 
    NSEntityDescription * entity = [NSEntityDescription 
            entityForName:@"Transaction" 
            inManagedObjectContext:context]; 
    [fetchRequest setEntity:entity]; 
    NSError * error = nil; 
    NSArray * transactionList = [context executeFetchRequest:fetchRequest error:&error]; 
    if (&error != nil) { 
     [Utility showMessage:error.description asError:YES]; 
    } else { 
     [Utility showMessage:[NSString stringWithFormat: @"Items: %@", transactionList.count] asError:NO]; 
    }  

entityオブジェクトを作成しようとしたとき、私は次のエラーが表示されます。実際のデータストア内の項目、および保存するときには、次のコードを実行するときに正常に動作Transactionエンティティがあります。

[NSManagedObjectModel persistentStoreCoordinator]:認識されていないセレクタは、私が何をしないのですか、私は、エラーを引き起こしているかどうか確認するために何をしますかインスタンスに

を送りましたか?

脚注
- Utility単にNSAlertボックスを生成する静的クラスです。
- 私がしようとすると、コードを使用すると、アプリのデリゲートからmanagedObjectModelをフェッチしNSManagedObjectContextに割り当てている最初の行で

答えて

2

をどのように動作するかを理解するためにthisチュートリアルを使用してきました。代わりにmanagedObjectContextを取得する必要があります。

+0

今私は少し恥ずかしいと感じますが、ありがとうございます。私は初心者の間違いでした! – BinaryMisfit

2

あなたのコードから、管理対象オブジェクトのコンテキストに正確に割り当てられているものは明確ではありません。管理オブジェクトモデルではなく、管理対象オブジェクトコンテキストである必要があります。

また、(error!=nil)&errorでないかどうかを確認する必要があります。あなたのCのポインタ構文(;-)で読んでください。

+0

初心者の間違いを指摘していただきありがとうございます。 – BinaryMisfit

関連する問題