您使用了哪種遷移策略?
在XCode中,您可以生成映射模型,並查看將發生的更改(包括索引)。
我建議只需添加映射模型,驗證更改指定的索引,並執行自動輕量級遷移:
NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithBool:YES], NSMigratePersistentStoresAutomaticallyOption,
[NSNumber numberWithBool:YES], NSInferMappingModelAutomaticallyOption,nil];
NSPersistentStore *migratedStore = [persistentStoreCoordinator addPersistentStoreWithType:nil configuration:nil URL:storeURL options:options error:&error];
migrationWasSuccessful = (migratedStore != nil);
持久存儲協調器將自動發現映射模型,並用它來執行遷移。這聽起來像運行時推斷的模型對索引應用到實體屬性並不敏感。
我可以建議接受斯科特的回答嗎?它工作,它很乾淨。 – 2011-07-14 13:28:45
當然,完全忘了這一點。謝謝,文森特和thx爲斯科特的偉大答案! – steipete 2011-07-17 13:52:37