public async Task <int> SaveProduct(Guid id, Product product) { if (id != Guid.Empty) { product.Id = id; _productCatalogContext.Update(product); } else { _productCatalogContext.Add(product); } return(await _productCatalogContext.SaveChangesAsync()); }
public async Task <IActionResult> Create([Bind("Id,Name,Description,Quantity")] Product product) { if (ModelState.IsValid) { var productExists = await _context.Product.FirstOrDefaultAsync(p => p.Name == product.Name); if (productExists == null) { _context.Add(product); await _context.SaveChangesAsync(); await _hubContext.Clients.All.SendAsync("ReceiveNewProduct"); return(RedirectToAction(nameof(Index))); } else { ModelState.AddModelError("Duplicate", "The product name entered has already been used."); } } return(View(product)); }