public static void Update <TEntity>(this MastpenBitachonDbContext dbContext, TEntity entity, IUserInfo userInfo) where TEntity : class, IAuditableEntity
        {
            if (entity is IAuditableEntity cast)
            {
                if (cast.UserUpdate == null || cast.UserUpdate == 0)
                {
                    entity.UserUpdate = userInfo.UserId;
                }

                entity.DateUpdate = DateTime.Now;
            }

            dbContext.Set <TEntity>().Update(entity);
        }
        //db.Query(typeof(MyTable)).Where(...)



        public static void Add <TEntity>(this MastpenBitachonDbContext dbContext, TEntity entity, IUserInfo userInfo) where TEntity : class, IAuditableEntity
        {
            if (entity is IAuditableEntity cast)
            {
                //if (string.IsNullOrEmpty(cast.CreationUser))
                //    cast.CreationUser = userInfo.UserName;

                //if (!cast.CreationDateTime.HasValue)
                //    cast.CreationDateTime = DateTime.Now;

                if (cast.UserUpdate == null || cast.UserUpdate == 0)
                {
                    entity.UserInsert = userInfo.UserId;
                }

                entity.DateInsert = DateTime.Now;
            }

            dbContext.Set <TEntity>().Add(entity);
        }
 public static void Remove <TEntity>(this MastpenBitachonDbContext dbContext, TEntity entity) where TEntity : class, IAuditableEntity
 => dbContext.Set <TEntity>().Remove(entity);