2011-11-10 5 views
50

Creé un proyecto de datos no básicos. Ahora quiero usar datos básicos. En las fases de compilación, vinculé mi binario con CoreData.framework. En mi método delegado aplicación, quiero crear manualmente un contexto de objeto gestionado como talNo se puede crear un contexto de objeto administrado en iOS

NSManagedObjectContext *aContext = [[NSManagedObjectContext alloc] init]; 

Cuando yo lo anterior, me sale el siguiente error,

Receiver 'NSManagedObjectContext' for class message is a forward declaration. 

alguna sugerencia sobre lo que podría ser haciendo mal?

+13

¿Ha incluido #import en el encabezado del delegado de la aplicación? – isaac

+6

Gracias que funciona. Una mejor solución sería ponerlo en el archivo 'prefix.pch'. – David

+0

Además, desconfíe de usar una clase llamada mensaje. Esto entrará en conflicto con otras clases en iOS. He tenido esto me afecta antes. – Fogmeister

Respuesta

126

necesita importar CoreData/CoreData.h en el archivo de cabecera de su delegado aplicación:

#import <CoreData/CoreData.h> 

Dado que es probable que utilice a través de outyour aplicación que debe ponerlo en el archivo de encabezado precompilado, YourApp-Prefix.pch :

#ifdef __OBJC__ 
    #import <UIKit/UIKit.h> 
    #import <Foundation/Foundation.h> 
    #import <CoreData/CoreData.h> 
#endif 
+5

Si su aplicación utiliza Core Data en su totalidad, también puede agregar la misma línea al archivo YourAppName-Prefix.pch en el directorio Archivos de soporte de su proyecto. – robotpukeko

6

Sólo tiene que escribir import < CoreData/CoreData.h> en el archivo de aplicación. Funcionará

Cuestiones relacionadas