Использование Прозрачное шифрование базы данных . Как следует из названия, это прозрачный и LINQsSQL работает просто отлично.
Если вы используете SKU не для Enterprise, то вам придется использовать криптографические функции SQL для шифрования / дешифрования данных: ENCRYPTBYKEY и DECRYPTBYKEY . Для них нет никакой поддержки ни в клиентских инструментах (SqlClient, ODBC, OleDB), ни в ORM-инфраструктуре, включая LINQ. Процесс шифрования и дешифрования должен происходить на сервере и управляться конструкциями T-SQL, что в значительной степени подразумевает, что все операции DML должны выполняться с помощью хранимых процедур. Операции извлечения данных могут быть как-то автоматизированы с помощью представлений, которые проецируют дешифрованные данные, и эти представления могут быть увеличены с помощью LINQ.
Короче говоря, без TDE вы сможете использовать IQueryable над данными, возвращаемыми представлениями и процедурами, которые расшифровывают данные, но вы не сможете использовать LINQ в качестве ORM (например, без контекста данных InsertOnSubmit ).