EntityEntryExtensions.cs 659 B

12345678910111213141516171819202122232425
  1. using Abp.Domain.Entities;
  2. using Abp.Extensions;
  3. using Microsoft.EntityFrameworkCore;
  4. using Microsoft.EntityFrameworkCore.ChangeTracking;
  5. namespace VberZero.EntityHistory.Extensions;
  6. internal static class EntityEntryExtensions
  7. {
  8. internal static bool IsCreated(this EntityEntry entityEntry)
  9. {
  10. return entityEntry.State == EntityState.Added;
  11. }
  12. internal static bool IsDeleted(this EntityEntry entityEntry)
  13. {
  14. if (entityEntry.State == EntityState.Deleted)
  15. {
  16. return true;
  17. }
  18. var entity = entityEntry.Entity;
  19. return entity is ISoftDelete && entity.As<ISoftDelete>().IsDeleted;
  20. }
  21. }