我在 SimpleRepository 模式下使用 SubSonic 3.0.0.3。我想知道如何让 Subsonic 3 自动创建和填充 2.x 版本中标准的 createdon、createdby 等审计字段。
这是我必须使用 T4 模板配置的东西吗?
您需要使用 ActiveRecord 模板来自动填充审计字段。SimpleRepository 除了简单的数据访问之外不提供任何其他功能,因此您需要自己填充这些字段。
我真的很想完全坚持使用 SimpleRepository,它非常适合我们目前的需求。
所以我的直接解决方案是让我的所有域模型类都继承自 DataEntity 抽象类:
public abstract class DataEntity {
public string Name { get; set; }
public int ID { get; set; }
public string CreatedBy { get; set; }
public DateTime CreatedOn { get; set; }
public string ModifiedBy { get; set; }
public DateTime ModifiedOn { get; set; }
public bool IsDeleted { get; set; }
}
大家怎么看?这些属性不仅用于记账,它们与应用程序域模型相关,因此我认为将它们视为 DAL 的一等成员会更好。