Fórum ASP.NET Core MVC problema no override SaveChangesAsync #596872
01/09/2018
0
Boa noite.
Em todas as tabelas do meu banco de dados eu criei o campo DataCadastro, e quero que no momento de inserir, verifique se o campo DataCadastro tem valor. Se não tiver então coloca a data atual.
O problema é que na função "public override int SaveChanges()" funciona normal, mas quando coloco na função "public override async Task<int> SaveChangesAsync" da erro no salvar. O código completo é:
Alguém tem alguma idéia do que pode ser?
Em todas as tabelas do meu banco de dados eu criei o campo DataCadastro, e quero que no momento de inserir, verifique se o campo DataCadastro tem valor. Se não tiver então coloca a data atual.
O problema é que na função "public override int SaveChanges()" funciona normal, mas quando coloco na função "public override async Task<int> SaveChangesAsync" da erro no salvar. O código completo é:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | public override async Task< int > SaveChangesAsync( bool acceptAllChangesOnSuccess, CancellationToken cancellationToken = default (CancellationToken)) { foreach (var entry in ChangeTracker.Entries().Where(entry => entry.Entity.GetType().GetProperty( "DataCadastro" ) != null )) { if (entry.State == EntityState.Added) { entry.Property( "DataCadastro" ).CurrentValue = DateTime.Now; } if (entry.State == EntityState.Modified) { entry.Property( "DataCadastro" ).IsModified = false ; } } return await base .SaveChangesAsync(); } |
Alguém tem alguma idéia do que pode ser?

Guilherme Schirmer
Curtir tópico
+ 0
Responder
Posts
09/09/2018
Joel Rodrigues
Qual erro ocorre?
Responder
Gostei + 0
17/06/2020
Wolney Rodrigues
A assinatura de SaveChangesAsync requer um CancellationToken .
1 2 3 4 5 | public async override Task< int > SaveChangesAsync(CancellationToken cancellationToken = new CancellationToken()) { await AquiVaoSuasOperacoes(); return base .SaveChangesAsync(cancellationToken); } |
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)