diff --git a/AsbCloudInfrastructure/Repository/CrudRepositoryBase.cs b/AsbCloudInfrastructure/Repository/CrudRepositoryBase.cs index 900e181c..944dabd5 100644 --- a/AsbCloudInfrastructure/Repository/CrudRepositoryBase.cs +++ b/AsbCloudInfrastructure/Repository/CrudRepositoryBase.cs @@ -142,11 +142,9 @@ namespace AsbCloudInfrastructure.Repository if (ids.Length != existingEntitiesCount) throw new ArgumentInvalidException(nameof(dtos), "Все записи должны существовать в БД"); - var entities = dtos.Select(Convert); - var entries = entities.Select(entity => dbSet.Update(entity)).Cast().ToList(); - var affected = await dbContext.SaveChangesAsync(token); - entries.ForEach(e => e.State = EntityState.Detached); - return affected; + var entities = dbContext.Set().Where(e => ids.Contains(e.Id)); + dbContext.Set().UpdateRange(entities); + return await dbContext.SaveChangesAsync(token); } ///