/*Legger Orders og ProductOrders inn i databasen. CustomerID og pruductID-ene må være med i modellen*/ public bool add(OrderModel orderModel) { using (var db = new CustomerContext()) { try { var customer = db.Customers.Find(orderModel.customerID); if (customer == null)//tester om ordren tilhører en eksisterende kunde return false; var order = new Orders(); order.Customers = customer; db.Orders.Add(order); db.SaveChanges(); orderModel.orderNr = order.orderNr;//lagrer ordrenummeret i modellen for senere bruk return addProductOrders(orderModel);//legger til produkt ordrene } catch (Exception ex) { _logging.logToDatabase(ex); } return false; } }
private OrderModel createOrderModel(Orders order) { var orderModel = new OrderModel(); using (var db = new CustomerContext()) { if (order == null)//tester om orderen finnes return null; try { orderModel.orderNr = order.orderNr; orderModel.customerID = order.personID; var productOrders = (from p in db.ProductOrders where p.orderNr == order.orderNr select p).ToList(); orderModel.total = 0; var productDAL = new ProductDAL(); foreach (var o in productOrders)//legger produktene til i order modellen { var productModel = productDAL.find(o.products.productID); productModel.quantity = o.quantity; orderModel.products.Add(productModel); orderModel.total += o.price; } return orderModel; } catch (Exception ex) { _logging.logToDatabase(ex); } } return null; }