Столбец Always Encrypted — запрос LINQ Equals не работает

Я зашифровал столбец SSN, используя функцию Always Encrypted в SQL Server 2016. Когда я пытаюсь получить зашифрованный столбец в LINQ, я всегда получаю сообщение об ошибке. Я пробовал равные и содержит, но получил ту же ошибку.

Query = Query.Where(t => t.SSN == InputSSN);

Типы данных char(9), зашифрованные с помощью (encryption_type = 'DETERMINISTIC', шифрование_algorithm_name = 'AEAD_AES_256_CBC_HMAC_SHA_256',.. несовместимы в операторе равенства. Операторы не могут быть подготовлены.

SSN,InputSSN - строка в БД - SSN CHar(9) Latin1_General_BIN2


person Windows10    schedule 03.04.2017    source источник
comment
Какую структуру вы используете для своего клиента данных?   -  person Benjamin Anderson    schedule 04.04.2017
comment
.net Framework 4.6, Entity Framework 6. Шаблон репозитория   -  person Windows10    schedule 04.04.2017
comment
Вы добавили настройку шифрования столбца = включено в строку подключения?   -  person Liviu Boboia    schedule 04.04.2017
comment
Да, я добавил   -  person Windows10    schedule 04.04.2017


Ответы (1)


изменили тип данных в таблице, и это сработало.

person Windows10    schedule 04.04.2017
comment
Любопытно, на что вы изменили тип данных с -› на? - person Lukie; 23.05.2017