public DBModelo() { Ecuaciones = new List <DBEcuacion>(); FuncionAOptimizar = new DBEcuacion(); FuncionOriginal = new DBEcuacion(); }
private static void CopiarADBModelo(IModelodata modelo, DBModelo dbm) { DBTermino terminoTmp = null; DBEcuacion ecuacionTmp = null; bool tieneId = modelo.Id != Guid.Empty; if (tieneId) { dbm.Id = modelo.Id; } else { dbm.Id = Guid.NewGuid(); }; dbm.Nombre = modelo.Nombre; dbm.Objetivo = modelo.Objetivo; foreach (var ecu in modelo.Ecuaciones) { ecuacionTmp = new DBEcuacion(); foreach (var term in ecu.Terminos) { terminoTmp = new DBTermino(); if (tieneId) { terminoTmp.Id = term.Id; } else { terminoTmp.Id = Guid.NewGuid(); }; terminoTmp.Valor = term.Valor; terminoTmp.Variable = term.Variable; ecuacionTmp.Terminos.Add(terminoTmp); } if (tieneId) { ecuacionTmp.Id = ecu.Id; } else { ecuacionTmp.Id = Guid.NewGuid(); }; ecuacionTmp.NroEcu = ecu.NroEcu; ecuacionTmp.Operador = ecu.Operador; ecuacionTmp.Preparada = ecu.Preparada; ecuacionTmp.ValorDerecho = ecu.ValorDerecho; ecuacionTmp.VariableBasica = ecu.VariableBasica; dbm.Ecuaciones.Add(ecuacionTmp); //ecuacionTmp = new DBEcuacion(); } if (tieneId) { dbm.FuncionAOptimizar.Id = modelo.FuncionAOptimizar.Id; } else { dbm.FuncionAOptimizar.Id = Guid.NewGuid(); }; dbm.FuncionAOptimizar.NroEcu = modelo.FuncionAOptimizar.NroEcu; dbm.FuncionAOptimizar.Operador = modelo.FuncionAOptimizar.Operador; dbm.FuncionAOptimizar.Preparada = modelo.FuncionAOptimizar.Preparada; dbm.FuncionAOptimizar.ValorDerecho = modelo.FuncionAOptimizar.ValorDerecho; dbm.FuncionAOptimizar.VariableBasica = modelo.FuncionAOptimizar.VariableBasica; foreach (var fAOp in modelo.FuncionAOptimizar.Terminos) { terminoTmp = new DBTermino(); if (tieneId) { terminoTmp.Id = fAOp.Id; } else { terminoTmp.Id = Guid.NewGuid(); }; terminoTmp.Valor = fAOp.Valor; terminoTmp.Variable = fAOp.Variable; dbm.FuncionAOptimizar.Terminos.Add(terminoTmp); } if (tieneId) { dbm.FuncionOriginal.Id = modelo.FuncionOriginal.Id; } else { dbm.FuncionOriginal.Id = Guid.NewGuid(); }; dbm.FuncionOriginal.NroEcu = modelo.FuncionOriginal.NroEcu; dbm.FuncionOriginal.Operador = modelo.FuncionOriginal.Operador; dbm.FuncionOriginal.Preparada = modelo.FuncionOriginal.Preparada; dbm.FuncionOriginal.ValorDerecho = modelo.FuncionOriginal.ValorDerecho; dbm.FuncionOriginal.VariableBasica = modelo.FuncionOriginal.VariableBasica; foreach (var fO in modelo.FuncionOriginal.Terminos) { terminoTmp = new DBTermino(); if (tieneId) { terminoTmp.Id = fO.Id; } else { terminoTmp.Id = Guid.NewGuid(); }; terminoTmp.Valor = fO.Valor; terminoTmp.Variable = fO.Variable; dbm.FuncionOriginal.Terminos.Add(terminoTmp); } }