使用审核表我需要保持我的大多数实体的修改/创建信息
- CreatedByUserId
- ModifiedByUserId
- CreatedDateTime
- ModifiedDateTime
的轨道。相当标准。
您认为最好将这些列添加到每个表......或者只需要在要审计的表上有一个CreatedAuditEntryId
和ModifiedAuditEntryId
FK,它指向现有的用于跟踪所有更改的单独审计表。
AuditEntry样子:
- 编号
- 用户ID
- 日期时间
有不得不做的明显的性能影响,2连接,以获得创建和修改信息...但好处是我没有在两个不同的地方保持状态,这就像我设计书中的第一基本规则。
UPDATE:
只是要清楚,AuditEntry表包含了每一个修改每个表,不管。这里的问题是,是否利用了表通过FKS创建和修改信息...或只加上面我想要的信息,每个表四列,从而避免了连接。
查看有关审计跟踪的更新问题。完整的审计信息将存在,无论...我只是想知道如果连接确实没问题。不幸的是,用户ID不能隐含在SQL中,因此我在保存更改时在EF中处理它。 – Jeff