2010-08-29 12 views
5

बना सकता हूँ, मैं एक NSManagedObjectContext करने के लिए डेटा को बचाने की कोशिश त्रुटियों के सभी प्रकार के हो रही थी।कैसे आप iPhone के लिए कोर डेटा में एक NSManagedObjectContext

मुझे विश्वास है कि मेरी मुद्दों सब मेरे साथ करने के लिए एक NSManagedObjectContext कि एक से अधिक थ्रेड में इस्तेमाल किया जा रहा था का उपयोग कर रहे थे।

तो मैं एक नया NSManagedObjectContext बना सकते हैं और है कि कोशिश करने के लिए चाहता था, लेकिन मैं बस एक नया उदाहरण बनाने के लिए उदाहरण कोड ...

मैं अपने सरल पता नहीं मिल रहा है, लेकिन मैं वास्तव में यहाँ किसी भी मदद की सराहना करेंगे। http://developer.apple.com/iphone/library/documentation/cocoa/conceptual/CoreDataUtilityTutorial/Articles/05_createStack.html

लेकिन यह कुछ कोड है कि मैं से परिचित नहीं हूँ, XMLStore जो iPhone पर समर्थित नहीं है की तरह का उपयोग करता है, आदि

उत्तर

14

:

ध्यान दें, मैं एप्पल डॉक्स पर इस लेख को देखा है

- (NSManagedObjectContext *)managedObjectContext { 
    NSManagedObjectContext *managedObjectContext = nil; 

    NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator]; 
    if (coordinator != nil) { 
     managedObjectContext = [[NSManagedObjectContext alloc] init]; 
     [managedObjectContext setPersistentStoreCoordinator:coordinator]; 
     [managedObjectContext setUndoManager:nil]; 
    } 
    return [managedObjectContext autorelease]; 
} 

यह बस संदर्भ का एक नया उदाहरण बना सकते हैं और दुकान है कि आप उपयोग करना चाहते हैं सेट है: यह एक नया संदर्भ बनाने के लिए कोड है।

आप एक से अधिक भंडार है, तो आप ऐसा ही कुछ के लिए जाना होगा:

- (NSManagedObjectContext *)managedObjectContextForStore:(NSString *)store { 
    NSManagedObjectContext *managedObjectContext = nil; 

    NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinatorForStore:store]; 
    if (coordinator != nil) { 
     managedObjectContext = [[NSManagedObjectContext alloc] init]; 
     [managedObjectContext setPersistentStoreCoordinator:coordinator]; 
     [managedObjectContext setUndoManager:nil]; 
    } 
    return [managedObjectContext autorelease]; 
} 

अधिक जानकारी के लिए, कृपया Apple's Core Data Tutorial for iOS पर एक नजर है।

चीयर्स!

+1

धन्यवाद वीएफएन, हालांकि '[self persistentStoreCoordinator] कहां से आता है? क्या वह एक सुपर क्लास से विरासत में मिला है? मैं अपने कोड के साथ एक उपयोगिता वर्ग में, मैं लगातारStoreCoordinator प्राप्त करने के बारे में कैसे जाना चाहिए? – Mark

+1

आपको अपनी दृढ़ता स्टोर के सेटअप के लिए कोड को लागू करने की आवश्यकता है। http://developer.apple.com/iphone/library/samplecode/TopSongs/Introduction/Intro.html – vfn

+0

यह persistentStoreCoordinator पाने के लिए मुख्य थ्रेड से एमओसी प्रयोग सुरक्षित है: एप्पल से इस नमूने पर एक नज़र है? मुझे संदेह है कि यह है, लेकिन सिर्फ पूछ रहा है ... – Mark

संबंधित मुद्दे