シナリオは、クライアントがクライアントの敷地内でホストされているシステム (私たちが作成したもの) を所有および管理しているというものです。彼らのクライアントは、契約上、システムの背後にあるデータベースのデータを変更することは制限されていますが、完全な管理者権限を持っているため、選択した場合はデータを変更できます (サーバーは彼らによって調達され、オンプレミスでホストされています)。
要件は、データが変更された場合に通知を受け取ることです。今のところ、データの削除は無視してください。この議論はテーブル内のデータの修正に関するものです。
Linq to Sql を使用しており、データ コンテキストをオーバーライドして、データの読み取りごとに、行データのハッシュを、挿入/更新中に以前に作成され、テーブルの各行に保持されている格納済みハッシュと比較します。
スケーラビリティが気になるので、他にアイデアがあれば教えていただきたいです。SSMS でのデータ変更、データベースで直接実行されるクエリなどの通知を取得しようとしています。また、誰かがサービス (Windows サービス) を停止した場合、起動時に行が変更されたことを知る必要があります。何かご意見は?
編集:もっと明確にすることができたので、明確にさせてください。私たちは必ずしも変更が行われるのを止めようとしているわけではありません (彼らは完全なアクセス権を持っているのでこれは不可能です)。