Пример #1
0
        public bool ActualizarEvaluacion(object[,] VResultados, int ideval, bool estado)
        {
            try
            {
                var results = from e in db.ResultadosByEvaluacions
                              where e.IdEvaluacion == ideval
                              select e;

                int contvector = 0;
                for (int i = 0; i < VResultados.GetLength(0); i++)
                {
                    int contador = 0;

                    foreach (var item in results)
                    {
                        int idpregunta = 0;

                        if (VResultados[contvector, 0] != null)
                            idpregunta = Convert.ToInt32(VResultados[contvector, 0]);

                        if (idpregunta != 0)
                        {
                            if (item.Resultado.IdPregunta == idpregunta)
                            {
                                if (VResultados[contvector, 2] != null && VResultados[contvector, 2].ToString() != "")
                                {
                                    if (VResultados[contvector, 1] != null)
                                    {
                                        item.Resultado.Valor = (bool)VResultados[contvector, 1];
                                        item.Resultado.Sesiones = Convert.ToInt32(VResultados[contvector, 2]);
                                        item.Resultado.Pendiente = (bool)VResultados[contvector, 3];

                                        db.SubmitChanges();
                                    }
                                }
                                else
                                {
                                    if (VResultados[contvector, 1] != null)
                                    {
                                        item.Resultado.Valor = (bool)VResultados[contvector, 1];
                                        item.Resultado.Pendiente = (bool)VResultados[contvector, 3];

                                        db.SubmitChanges();
                                    }
                                }
                                contador++;
                                break;
                            }
                        }
                    }
                    if (contador == 0)
                    {
                        int idpregunta = 0;

                        if (VResultados[contvector, 0] != null)
                            idpregunta = Convert.ToInt32(VResultados[contvector, 0]);

                        if (idpregunta != 0)
                        {
                            Resultado objResultados = null;
                            if (VResultados[contvector, 2] != null && VResultados[contvector, 2].ToString() != "")
                            {
                                if (VResultados[contvector, 1] != null)
                                {
                                    objResultados = new Resultado
                                    {
                                        IdPregunta = Convert.ToInt32(VResultados[contvector, 0]),
                                        Valor = Convert.ToBoolean(VResultados[contvector, 1]),
                                        Sesiones = Convert.ToInt32(VResultados[contvector, 2]),
                                        Pendiente = Convert.ToBoolean(VResultados[contvector, 3])
                                    };
                                }
                                else
                                {
                                    objResultados = new Resultado
                                    {
                                        IdPregunta = Convert.ToInt32(VResultados[contvector, 0])
                                    };
                                }
                            }
                            else
                            {
                                if (VResultados[contvector, 1] != null)
                                {
                                    objResultados = new Resultado
                                    {
                                        IdPregunta = Convert.ToInt32(VResultados[contvector, 0]),
                                        Valor = Convert.ToBoolean(VResultados[contvector, 1]),
                                        Pendiente = Convert.ToBoolean(VResultados[contvector, 3])
                                    };
                                }
                                else
                                {
                                    objResultados = new Resultado
                                    {
                                        IdPregunta = Convert.ToInt32(VResultados[contvector, 0])
                                    };
                                }
                            }

                            if (objResultados != null)
                            {
                                db.Resultados.InsertOnSubmit(objResultados);
                                db.SubmitChanges();

                                ResultadosByEvaluacion objResultadosByEvaluacion = new ResultadosByEvaluacion
                                {
                                    IdEvaluacion = ideval,
                                    IdResultado = objResultados.IdResultados
                                };
                                db.ResultadosByEvaluacions.InsertOnSubmit(objResultadosByEvaluacion);
                                db.SubmitChanges();
                            }
                        }
                    }
                    contvector++;
                }
                var eval = (from ev in db.Evaluacions
                            where ev.IdEvaluacion == ideval
                            select ev).Single();
                if (estado)
                    eval.IdEstado = 2;
                else
                    eval.IdEstado = 1;

                db.SubmitChanges();
                return true;
            }
            catch (Exception) { return false; }
        }
Пример #2
0
        /// <summary>
        /// Inserta una coleccion de resultados basandose en un arreglo bidimensional 
        /// que requiere como parametro.
        /// </summary>
        /// <param name="ResultadosByPre">Colleccion del tipo object[,] que contiene los resultados obtenidos para la evaluacion</param>
        /// <param name="idEvaluacion">Id de la evaluacion  a la que pertenece la coleccion de resultados</param>
        /// <returns></returns>
        private bool InsertarResultados(object[,] ResultadosByPre, int idEvaluacion)
        {
            try
            {
                /*Se Crea un clico for para recorrer una coleccion bidimencioal que
                 *almacena la informacion que se obtubo luego de responder la evaluacion*/
                for (int i = 0; i < ResultadosByPre.GetLength(0); i++)
                {
                    Resultado objResultados = null;
                    /*Instancio un nuevo elemento del tipo Resultados*/
                    if (ResultadosByPre[i, 1] != null)
                    {
                        if (ResultadosByPre[i, 2] != null && ResultadosByPre[i, 2].ToString() != "")
                        {
                            objResultados = new Resultado
                            {
                                /*Asigno a los parametros de el mismo objeto los valores de la coleccion*/
                                IdPregunta = (int)ResultadosByPre[i, 0],
                                Valor = (bool)ResultadosByPre[i, 1],
                                Sesiones = Convert.ToInt32(ResultadosByPre[i, 2]),
                                Pendiente = (bool)ResultadosByPre[i, 3]
                            };
                        }
                        else
                        {
                            objResultados = new Resultado
                            {
                                /*Asigno a los parametros de el mismo objeto los valores de la coleccion*/
                                IdPregunta = (int)ResultadosByPre[i, 0],
                                Valor = (bool)ResultadosByPre[i, 1],
                                Pendiente = (bool)ResultadosByPre[i, 3]
                            };
                        }
                    }
                    else
                    {
                        if (ResultadosByPre[i, 2] != null && ResultadosByPre[i, 2].ToString() != "")
                        {
                            objResultados = new Resultado
                            {
                                /*Asigno a los parametros de el mismo objeto los valores de la coleccion*/
                                IdPregunta = (int)ResultadosByPre[i, 0],
                                Sesiones = Convert.ToInt32(ResultadosByPre[i, 2]),
                                Pendiente = (bool)ResultadosByPre[i, 3]
                            };
                        }
                        else
                        {
                            objResultados = new Resultado
                            {
                                /*Asigno a los parametros de el mismo objeto los valores de la coleccion*/
                                IdPregunta = (int)ResultadosByPre[i, 0],
                                Pendiente = (bool)ResultadosByPre[i, 3]
                            };
                        }
                    }

                    /*Realizo el proceso de insercion en el modelo de base de datos
                     *con el objeto actual
                     */
                    db.Resultados.InsertOnSubmit(objResultados);
                    /*Ejecuto el proceso de grabado en la base de datos este proceso se realiza
                     * por resultado para evitar perdida de informacion en un comit general
                     */
                    db.SubmitChanges();
                    /*Obtengo el ultimo id de resultado insertado*/
                    int idResultado = (from r in db.Resultados
                                       select r.IdResultados).Max();

                    /*Instancion un objeto del tipo ResultadosByEvaluacion*/
                    ResultadosByEvaluacion objResultadosByEvaluacion = new ResultadosByEvaluacion
                    {
                        /*Asigno los valores de los parametos del metodo presente
                         * a los parametros del objeto del tipo ResultadosByEvaluacion
                         * actual
                         */
                        IdEvaluacion = idEvaluacion,
                        IdResultado = idResultado
                    };
                    /*Realizo el proceso de insercion para el objeto ResultadosByEvaluacion*/
                    db.ResultadosByEvaluacions.InsertOnSubmit(objResultadosByEvaluacion);
                    db.SubmitChanges();
                }
                /*retorno un valor verdadero en caso de no presentar excepcion de ningun tipo*/
                return true;
            }
            /*En caso de presentar una excepcion retorno un valor false*/
            catch (Exception) { return false; }
        }
Пример #3
0
 partial void DeleteResultado(Resultado instance);
Пример #4
0
 partial void UpdateResultado(Resultado instance);
Пример #5
0
 partial void InsertResultado(Resultado instance);
Пример #6
0
		private void detach_Resultados(Resultado entity)
		{
			this.SendPropertyChanging();
			entity.Pregunta = null;
		}