public Boolean AddProduct(Listino listino, Prodotto prodotto, int quantita) { Listino existingListino = GetListino(listino.Id); if (existingListino != null) { ProdottoService prodSrv = new ProdottoService(); Prodotto existingProdotto = prodSrv.GetProdotto(prodotto.Id); if (existingProdotto != null) { DettaglioListino dettaglio = new DettaglioListino() { Id_listino = listino.Id, Id_prodotto = prodotto.Id, quantita = quantita }; context.DettaglioListinoSet.Add(dettaglio); context.SaveChanges(); return(true); } else { return(false); //throw new DbUpdateException(); } } else { return(false); //throw new DbUpdateException(); } }
public List <Prodotto> GetProdotti(Listino listino) { var listProduct = context.DettaglioListinoSet.Where(x => x.Id_listino == listino.Id).ToList(); List <Prodotto> prodotti = new List <Prodotto>(); foreach (var dettaglio in listProduct) { ProdottoService prodSrv = new ProdottoService(); if (dettaglio.Id_prodotto.HasValue) { prodotti.Add(prodSrv.GetProdotto(dettaglio.Id_prodotto.Value)); } } return(prodotti); }
public Boolean RemoveProduct(Listino listino, Prodotto prodotto, int quantita) { Listino existingListino = GetListino(listino.Id); if (existingListino != null) { ProdottoService prodSrv = new ProdottoService(); Prodotto existingProdotto = prodSrv.GetProdotto(prodotto.Id); if (existingProdotto != null) { DettaglioListinoService dlSrv = new DettaglioListinoService(); ///Get from different context (NOT WORKING) //DettaglioListino dettaglio = dlSrv.GetDettaglioByListinoProdotto(listino.Id, prodotto.Id); ///Get from same context (OK) DettaglioListino dettaglio = context.DettaglioListinoSet.SingleOrDefault(x => x.Id_listino == listino.Id && x.Id_prodotto == prodotto.Id); if (dettaglio != null) { context.DettaglioListinoSet.Remove(dettaglio); context.SaveChanges(); return(true); } else { return(false); } } else { return(false); //throw new DbUpdateException(); } } else { return(false); //throw new DbUpdateException(); } }