核心数据NSFetchRequest setResultType:NSDictionaryResultType不起作用

bba*_*art 5 core-data ios

将NSFetchRequest结果类型设置为NSDictinaryResultType时,将返回零对象.如果我删除setPropertiesToFetch和setResultType,则返回所有对象.

有任何想法吗?

NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Alert" inManagedObjectContext:_managedObjectContext];
[request setEntity:entity];

NSDictionary *entityProperties = [entity propertiesByName]; 
[request setPropertiesToFetch:[NSArray arrayWithObject:[entityProperties objectForKey:@"test"]]];
[request setResultType:NSDictionaryResultType];

NSError *error;
NSArray *result = [_managedObjectContext executeFetchRequest:request error:&error];

if (result == nil) {
    NSLog(@"Error: %@", [error localizedDescription]);
}
Run Code Online (Sandbox Code Playgroud)

bba*_*art 10

问题是我需要在插入新对象后保存mangedObjectContext.一旦我这样做,我得到了我正在寻找的结果.