public IActionResult CreateOrderRow(OrderRowViewModel orderRow) { try { Article articleToCreate = new Article(); int articleId = 0; articleToCreate = articleToCreate.GetIfArticleByNameExist(orderRow.ArticleName); //Article exist in database if (articleToCreate != null) { articleId = articleToCreate.Id; //Overides users choosen article number since the item exists in the db. orderRow.ArticleNumber = articleToCreate.ArticleNumber; } //Create new Article if (articleToCreate is null) { articleToCreate = new Article() { ArticleName = orderRow.ArticleName, Price = orderRow.Price, ArticleNumber = orderRow.ArticleNumber }; articleId = articleToCreate.CreateArticle(articleToCreate); } OrderRow orderRowToCreate = new OrderRow() { ArticleId = articleId, OrderId = orderRow.OrderId, RowNumber = OrderHelper.GetOrderRowNumber(orderRow.OrderId), ArticleAmount = orderRow.ArticleAmount, }; int orderRowId = orderRowToCreate.CreateOrderRow(orderRowToCreate); return(RedirectToAction("Details", new { id = orderRow.OrderId })); } catch (Exception ex) { return(View("Error", ex.Message)); } }