public virtual void Delete(IEnumerable <TModel> models)
        {
            var entities = Сonverter.ConvertFrom(models);

            foreach (var entity in entities)
            {
                var foundEntity = DbSet.Find(entity.Id);

                if (foundEntity != null)
                {
                    DbSet.Remove(foundEntity);
                }
            }
        }
        private ProductEntity UpdateProductCategories(ProductModel model)
        {
            var productEntity = Сonverter.ConvertFrom(model);

            foreach (var productCategory in productEntity.ProductCategoryEntities)
            {
                var foundCategory = _categoryDbSet.FirstOrDefault(
                    c => c.Name == productCategory.Category.Name);

                if (foundCategory != null)
                {
                    productCategory.CategoryId = foundCategory.Id;
                    productCategory.Category   = foundCategory;
                }
            }

            return(productEntity);
        }
        public virtual IEnumerable <TModel> Create(IEnumerable <TModel> models)
        {
            var createdModels = new List <TModel>();

            foreach (var model in models)
            {
                var foundEntity = DbSet.Find(model.Id);

                if (foundEntity == null)
                {
                    var entity        = Сonverter.ConvertFrom(model);
                    var createdEntity = DbSet.Add(entity);
                    var createdModel  = Сonverter.ConvertTo(createdEntity.Entity);
                    createdModels.Add(createdModel);
                }
            }

            return(createdModels);
        }
Beispiel #4
0
        public override void Update(IEnumerable <CategoryModel> models)
        {
            var entities = Сonverter.ConvertFrom(models);
            var foundEntitiesToUpdate = new List <CategoryEntity>();

            foreach (var entity in entities)
            {
                var foundEntity = DbSet.Find(entity.Id);

                if (foundEntity != null)
                {
                    foundEntity.Name        = entity.Name;
                    foundEntity.Description = entity.Description;

                    foundEntitiesToUpdate.Add(foundEntity);
                }
            }

            DbSet.UpdateRange(foundEntitiesToUpdate);
        }