2016-11-06 4 views
0

퍼시스턴스 스토리지에 저장하고 싶지 않습니다. 지속성 스토리지에 저장하지 않고 엔티티 클래스를 어떻게 사용할 수 있습니까? 관리되는 개체 컨텍스트와 지속적인 핵심 코디네이터를 생성 한 후managedObjectContext를 사용하여 entity를 사용하는 방법은 무엇입니까?

+0

왜 그런지 문제를 설명해주십시오. – shallowThought

+0

엔티티 클래스를 원하지만 영구 저장소에 저장하지 않으려합니다. – coreDeviOS

+0

이 이해되었습니다. 하지만 왜? – shallowThought

답변

0

, 당신은 가게 코디네이터에게 두 개의 영속 저장을 할당 : 당신이 컨텍스트에 새 개체를 삽입 할 때

NSPersistentStore *sqliteStore, *memoryStore; 

sqliteStore = [coordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeUrl options:nil error:&error]; 
if (sqliteStore == nil) { 
    // ... 
} 
memoryStore = [coordinator addPersistentStoreWithType:NSInMemoryStoreType configuration:nil URL:nil options:nil error:&error]; 
if (memoryStore == nil) { 
    // ... 
} 

나중에, 당신은 어느 새 개체를 연결 SQLite 저장소 또는 메모리 내 저장소 :

Records *record = [NSEntityDescription insertNewObjectForEntityForName:@"Records" inManagedObjectContext:context]; 
[context assignObject:poster toPersistentStore:memoryStore]; 
// or: [context assignObject:poster toPersistentStore:sqliteStore]; 
record.empID = ...; 
record.name = ...; 

SQLite 저장소에 할당 된 개체 만 디스크에 저장됩니다. 응용 프로그램을 다시 시작하면 메모리 내장 저장소에 할당 된 객체가 사라집니다.

+0

도움이 된 것을 기쁘게 생각합니다 .. 제발 upvote 잊지 마세요 .. 건배 !! –

+0

- (NSPersistentStore *) inMemoryStore { NSError * error = nil; return [_persistentStoreCoordinator addPersistentStoreWithType : NSInMemoryStoreType 구성 : nil URL : nil 옵션 : nil 오류 : & 오류]; } – coreDeviOS

+0

지금 작동하지 않습니다. – coreDeviOS