//Funcion que recupera los alergenos a partir de un plato private List <tbAlergenos> RecuperarAlergenos(tbPlatos pPlato) { List <tbAlergenos> lRespAlerg = new List <tbAlergenos>(); foreach (var vIngXPlato in pPlato.tbIng_Plato) { foreach (var vAlergXIng in vIngXPlato.tbIngredientes.tbAlerg_Ing) { if (!lRespAlerg.Exists(elemento => elemento.id_Alergeno == vAlergXIng.tbAlergenos.id_Alergeno)) { lRespAlerg.Add(vAlergXIng.tbAlergenos); } } } return(lRespAlerg); }
public void InsertarPlato(int pIdPlato, string pNombrePlato, string pDescripcionPlato, IngXPlato[] pIngs) { tbPlatos vAuxPlato = new tbPlatos(); vAuxPlato.Id_Plato = pIdPlato; vAuxPlato.Nombre_Plato = pNombrePlato; vAuxPlato.Descripcion_Plato = pDescripcionPlato; if (pIngs != null) { foreach (var vIng in pIngs) { tbIng_Plato vAuxIngPlato = new tbIng_Plato(); vAuxIngPlato.id_Ingrediente = vIng.idIng; vAuxIngPlato.Cantidad = vIng.Cantidad; vAuxIngPlato.id_Ing_Plato = vIng.idIngXPlato; vAuxIngPlato.Id_Plato = pIdPlato; vAuxPlato.tbIng_Plato.Add(vAuxIngPlato); } } gDB.tbPlatos.Add(vAuxPlato); gDB.SaveChanges(); }