次のコードがありますが、正しく動作します。
NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Person" inManagedObjectContext:context];
request.entity = entity;
NSArray *results = [context executeFetchRequest:request error:&err];
NSLog(@"results.count = %d", results.count);
'results.count = 2' をログに記録します。ここで、2 は私のコンテキストで登録されているすべての人物です。しかし、このコードを変更してプロパティのみを表示しようとすると、0 オブジェクトが表示されます。
NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Person" inManagedObjectContext:context];
request.entity = entity;
request.resultType = NSDictionaryResultType;
request.propertiesToFetch = [NSArray arrayWithObject:[[entity propertiesByName] objectForKey:@"name"]];
NSArray *results = [context executeFetchRequest:request error:&err];
NSLog(@"results.count = %d", results.count);
私が何か間違ったことをしているかどうか誰かが知っていますか? 答えが見つかりません。