public void SaveSiteCard(ProductSiteCard entity)
 {
     if (dbContext.ProductSiteCards.AsNoTracking().FirstOrDefault(e => e.ProductId == entity.ProductId) == default)
     {
         dbContext.Entry(entity).State = EntityState.Added;
     }
     else
     {
         dbContext.Entry(entity).State = EntityState.Modified;
     }
     dbContext.SaveChanges();
 }
Esempio n. 2
0
        public void SaveProducer(Producer entity)
        {
            Producer producer = dbContext.Producers.AsNoTracking().FirstOrDefault(x => x == entity);

            if (producer == default)
            {
                dbContext.Entry(entity).State = EntityState.Added;
            }
            else
            {
                dbContext.Entry(entity).State = EntityState.Modified;
            }
            dbContext.SaveChanges();
        }
        public void SaveProduct(Product entity)
        {
            Producer producer = dbContext.Producers.AsNoTracking().FirstOrDefault(e => e.ProducerId == entity.ProducerId);

            if (producer == default)
            {
                // Ошибка, такое невозможно
                throw new ArgumentException("Ошибка, производителя нет для конкретного продукта");
            }
            if ((producer.Products == null) || (!producer.Products.Any(e => e.ProductId == entity.ProductId)))
            {
                dbContext.Entry(entity).State = EntityState.Added;
            }
            else
            {
                dbContext.Entry(entity).State = EntityState.Modified;
            }
            dbContext.SaveChanges();
        }