我有用Xcode GUI創建的預先存在的NSManagedObjectModel
。我想創建一個排序的抓取屬性,Xcode 3.2的GUI不支持。在創建我的NSPersistentStoreCoordinator
之前,我做了所有這些工作,因爲我知道在對象圖管理器開始使用它之後不能修改NSManagedObjectModel
。我創建了NSFetchedPropertyDescription
正是如此:如何以編程方式創建NSFetchedPropertyDescription?
NSManagedObjectModel *managedObjectModel = ... // fetch from my mainBundle
NSEntityDescription *fetchedPropertyEntityDescription = [entitiesByName objectForKey:@"MyEntity"];
NSFetchRequest *fetchRequest = [[[NSFetchRequest alloc] init] autorelease];
[fetchRequest setEntity:fetchedPropertyEntityDescription];
[fetchRequest setPredicate:[NSPredicate predicateWithFormat:@"myPredicateProperty == $FETCH_SOURCE"]];
[fetchRequest setSortDescriptors:[NSArray arrayWithObject:[NSSortDescriptor sortDescriptorWithKey:@"mySortProperty" ascending:YES]]];
NSFetchedPropertyDescription *fetchedPropertyDescription = [[[NSFetchedPropertyDescription alloc] init] autorelease];
[fetchedPropertyDescription setFetchRequest:fetchRequest];
[fetchedPropertyDescription setName:@"myFetchedProperty"];
NSEntityDescription *entityDescription = [entitiesByName objectForKey:@"MyFetchSourceEntity"];
[entityDescription setProperties:[[entityDescription properties] arrayByAddingObject:fetchedPropertyDescription]];
當我打電話
[fetchedPropertyDescription setFetchRequest:fetchRequest];
我得到以下異常:
NSInvalidArgumentException: Can't use fetch request with fetched property description (entity model mismatch).
是的,但我還沒有創建與NSManagedObjectModel一個NSPersistentStoreCoordinator呢。我會更新我的問題。 – 2011-04-14 02:37:23