2014-01-06 37 views
1

我目前嘗試使用下面的代碼來從一個NSInMemoryStoreType店不同的特性:使用獲取NSInMemoryStoreType的不同值將返回重複項。 NSSQLiteStoreType不

- (void)fetchDistinctTitles 
{ 
    NSFetchRequest *fetchTitles = [NSFetchRequest fetchRequestWithEntityName:@"Event"]; 
    [fetchTitles setReturnsDistinctResults:YES]; 
    [fetchTitles setResultType:NSDictionaryResultType]; 
    [fetchTitles setPropertiesToFetch:@[@"title"]]; 

    NSError *error; 
    NSArray *fetchedTitles = [self.managedObjectContext executeFetchRequest:fetchTitles error:&error]; 
    NSLog(@"%@", fetchedTitles); 
} 

NSSQLiteStoreType店就像預期。相反,使用NSInMemoryStoreType返回重複title's。

這是我的示例代碼,基於蘋果公司的「主應用程序」模板:http://cl.ly/1K001N3e3x1U。在應用委託中切換NSPersistentStoreCoordinator的商店類型,並添加一些條目以確定日誌中的不同結果。

這是一個已知的問題,或者我錯過了NSFetchRequest的東西嗎?

+0

這看起來像NSInMemoryStoreType的(無證)限制。比較http://stackoverflow.com/a/5014226/1187415,其中針對NSXMLStoreType報告了相同的問題。 –

+0

好吧,我明白了。請您添加您的評論墨跡。該鏈接作爲答案,所以我可以將其標記爲正確的。 –

回答