@interface Account : NSManagedObject
@property (strong, nonatomic) NSData *encryptedPassword;
и я использовал @dynamic для этого свойстваИспользуя точечную нотацию на подкласс NSManagedObject вызвал UnrecoginzedSelectorException
@dynamic encryptedPassword;
В я установить класс модели на счет
Но это вызывает это исключение, когда я пытаюсь получить доступ к зашифрованному паролю с использованием точечной нотации, например:
account.encryptedPassword
При использовании KVC полностью нормально:
[account primitiveValueForKey:@"encryptedPassword"]
Не могли бы вы рассказать мне, как это исправить?
Для следующего кода
@try {
NSLog(@"Primitive Value: %@", [account primitiveValueForKey:@"encryptedPassword"]);
NSLog(@"Value For Key: %@", [account valueForKey:@"encryptedPassword"]);
NSLog(@"Dot Notation: %@", account.encryptedPassword);
}
@catch (NSException *exception) {
NSLog(@"Found: %@", exception.reason);
}
Я получил
Примитивного Значение: < 0f43f1e0 c4c4e0ab 97c524f4 b8483430>
Найдено: [valueForUndefinedKey]: субъект счета не является ключевым значение кодирования для ключа «encryptedPassword».
Какова ваша модель данных и работает 'valueForKey:'. – Wain
Он определяется как двоичные данные, необязательные, и ничего больше, чем обычный атрибут. Oh и valueForKey: не работает. – Poligun
И вы создали класс вручную, а не Xcode. В чем разница с автоматически сгенерированной версией? – Wain