私のプロジェクトでは、エンティティフレームワークを介して、オブジェクトに加えられたすべての変更をログに記録する必要があります。これは、どのフィールドがどのテーブルでいつ編集されたかを登録するためだけのものです。
大まかに言って、IDEvent、EventDate、TableName、RowID、FieldName、OldValue、NewValueのような構造のテーブルに変更を加えます。
複数の変更がある場合は、複数の行が挿入されます。
私の場合の90%ですでに機能しています。私は、ObjectContextのSavingChangesイベントをリッスンしています。
私の唯一の問題:追加の場合、SQL(IDENTITY)によって生成された主キーは、DBにまだ保存されていないため、現時点では(ロジック)SavingChangesイベントに存在しません。問題は次のとおりです。本当に必要なこと(テーブルにRowIDを入力するため)
それで、あなたはこれをどのように行うかについての考えを持っていますか?「ChangesSaved」イベントが見つかりませんでした。回避策のアイデア?