У меня есть сомнения по поводу того, как реализовать пользовательский код в таблице аудита. Audit.net включает в себя имя пользователя, подключенного к базе данных (пример: sa), но я также хотел бы включить идентификатор пользователя моей системы. Я провел несколько тестов, читая код, но мне это не удалось. Можете ли вы показать мне, где я не прав, пожалуйста?
//public partial class coletasEntities : DbContext (orignal)
public partial class coletasEntities : AuditDbContext (changed)
{
...
}
//my main form_load
private void frmPrincipal_Load(object sender, EventArgs e)
{
Audit.Core.Configuration.Setup()
.UseEntityFramework(x => x
.AuditTypeNameMapper(typeName => "_Audit" + typeName)
.AuditEntityAction<IAudit>((ev, ent, auditEntity) =>
{
auditEntity.AuditUser = Global.id_usuario; //my user ID
}));
....
}
//interface create do add my custom property
public interface IAudit
{
int AuditUser { get; set; }
}
Если я просто изменю класс наследования с DbContext на Auditdbcontext, произойдет автоматическая генерация для каждой проверяемой таблицы, но пользовательское поле, которое я хочу (очевидно), не включено.
С измененным кодом, как указано выше, ничего не создается, ничего не происходит.
Я использую Entity Framework 6.