Я написал приложение, использующее LINQ-to-SQL, которое отправляет веб-форму в базу данных. Я не использую LINQ-to-SQL, используя шаблон репозитория.
В этом репозитории есть основные методы: Get (), Save () и т. Д.
В рамках развития проекта мне потребовалось зашифровать определенные поля в форме. Это было тривиально, так как я просто добавил вызовы шифрования к методам Get (), Save () в репозитории.
Теперь я хочу наложить на него слой oData, чтобы разрешить извлечение RESTful из MS Excel 2010 (когда он появится). У меня это работает, после нескольких натыканий на бесполезные сообщения об ошибках и т. Д.
Однако очевидно, что эти зашифрованные поля все еще зашифрованы. Мой шаблон репозитория расшифровал бы их за меня. Насколько мне известно, мне нужно напрямую привязать свою службу oData к контексту LINQ-to-SQL, чтобы схема и т. Д. Работала, - если я не войду в целый мир боли (любые URL-адреса приветствуются).
Есть ли способ вставить в запрос свой уровень шифрования / дешифрования, чтобы дешифрование выполнялось «на лету»? Я посмотрел на перегрузку OnStartProcessingRequest () DataService, но это не кажется мне таким полезным.