Я использую asp. net core + ef core. Я могу добавить данные для удаления или обновления в базу данных.
Но может ли это быть правдой, когда я выполняю эти операции, он может автоматически записывать в файл или базу данных userinfo и datetime
?
Если я обновляю данные, данные будут автоматически обновлять свойства LastModifiedDateTime
и ModifyUserId
.
или записывать их в файл?
, например: Если я обновляю базу данных
await _context.SaveChangesAsync(cancellationToken);
Я могу это сделать:
public override Task<int> SaveChangesAsync(CancellationToken cancellationToken = new CancellationToken())
{
foreach (var entry in ChangeTracker.Entries<AuditableEntity>())
{
switch (entry.State)
{
case EntityState.Added:
entry.Entity.CreatedBy = _currentUserService.UserId;
entry.Entity.Created = _dateTime.Now;
break;
case EntityState.Modified:
entry.Entity.LastModifiedBy = _currentUserService.UserId;
entry.Entity.LastModified = _dateTime.Now;
break;
}
}
return base.SaveChangesAsync(cancellationToken);
}
не нужно указывать свойство, но переопределить его для автоматического протоколирования?
как установить свойство каждого объекта? Тогда я смогу узнать, когда и кто сделает обновление?