So the business has decided that whenever certain tables are updated they want to save the old and new fields in a table. The table definition would contain the fields AuditLogId, FieldUpdated, OldValue, NewValue, ModifiedByUserId, DateModified.
I cannot decide if I should use subscribe to the AfterSave event of the MyCustomEntity class being saved or if I should override the OnSaveEntityComplete method of the DataAccessAdapterBase.
I am leaning toward using the AfterSave event because that way I can pick and choose what entities I will create an audit log for.
So my questions are
1. is this a sane approach
2. will the event args used in the AfterSave event handler give me access to all of the before and after data to create the audit trail
3. is there some other approach that I am not considering
Please advise.