Web フォームをデータベースに送信する LINQ-to-SQL を使用してアプリケーションを作成しました。リポジトリ パターンを使用して LINQ-to-SQL を削除します。
このリポジトリには、Get()、Save() などの基本的なメソッドがあります。
プロジェクトの開発として、フォームの特定のフィールドを暗号化する必要がありました。リポジトリの Get() メソッドと Save() メソッドに暗号化呼び出しを追加しただけなので、これは簡単なことでした。
ここで、oData レイヤーをその上に配置して、MS Excel 2010 からの RESTful 抽出を可能にします (出てきたら)。役に立たないエラーメッセージなどでいくつかつまずいた後、私はこれを機能させています。
ただし、明らかに、これらの暗号化されたフィールドはまだ暗号化されています。私のリポジトリ パターンは、これらを復号化してくれます。私の知る限り、スキーマなどを機能させるには、oData サービスを LINQ-to-SQL コンテキストに直接バインドする必要があります。
暗号化/復号化レイヤーをリクエストに挿入して、復号化が「オンザフライ」で行われるようにする方法はありますか? DataService の OnStartProcessingRequest() オーバーロードを見ましたが、これはあまり役に立ちません。