Я реализую таблицу аудита и переопределяю savechangesasync, но мне нужно получить идентификатор пользователя, но у меня нет доступа к HttpContextAccessor в моем классе контекста, потому что он находится в другом проекте в решении, я хочу отправить его как Аргумент в savechangesasync.Ive получил две таблицы:
Person {id, name, phone} и audtabletable {id, keys, oldvalues, newvalues, date, userid}.
Мое решение имеет два веб-проекта, в которых находятся мои контроллеры, и проект данных, в котором находятся контекст и модели.
Я перезаписываю savechangesasync следующим образом:
public override async Task<int> SaveChangesAsync(bool acceptAllChangesOnSuccess, CancellationToken cancellationToken = default(CancellationToken))
{
var auditEntries = OnBeforeSaveChanges();
var result = await base.SaveChangesAsync(acceptAllChangesOnSuccess, cancellationToken);
await OnAfterSaveChanges(auditEntries);
return result;
}
await _context.saveChangesAsync (идентификатор пользователя)
Или есть другой способ получше? Спасибо