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(); }
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(); }