UPDATE: This post is outdated and has significantly enhanced with a new version. Please see LINQ Audit Trail V2 In a project I am currently working on, we had a fairly common requirement of recording an Audit Trail of any data changes. The requirements were typical, provide a running log of any changes in the database, including: What table was modified? What fields changed? Who made the change? When did it occur? Naturally, there are many ways to tackle this...