コード例 #1
0
        /// <summary>
        /// Carga la lista de preguntas al objeto usuario
        /// </summary>
        /// <param name="user"></param>
        static public void CargarListaPreguntas(Usuario user)
        {
            user.Preguntas = ABMPregunta.GetPreguntas(user.IdUsuario);

            foreach (Pregunta p in user.Preguntas)
            {
                string estadoInicial = p.Estado;
                p.ChequearEstado();
                string estadoFinal = p.Estado;

                if (estadoInicial != estadoFinal)
                {
                    // Se debe cambiar el estado de la pregunta en la base de datos
                    ABMPregunta.ActualizarEstado(p.IdPregunta, estadoFinal);
                }
            }

            // Asignar la referencia al user para cada una de sus preguntas
            // y cargar sus listas de respuestas
            foreach (Pregunta p in user.Preguntas)
            {
                p.UserPregunta = user;
                CargarListaRespuestas(p);
            }
        }
コード例 #2
0
        /// <summary>
        /// Crea una nueva pregunta sin imagen en la base de datos y recarga la lista de preguntas del usuario
        /// </summary>
        /// <param name="userPregunta"></param>
        /// <param name="tituloPreg"></param>
        /// <param name="descripcionPreg"></param>
        public static void HacerPregunta(Usuario userPregunta, string tituloPreg, string descripcionPreg)
        {
            // Alta en base de datos
            ABMPregunta.AltaPregunta(userPregunta.IdUsuario, tituloPreg, descripcionPreg);

            // Recarga la lista de preguntas
            CargarListaPreguntas(userPregunta);
        }
コード例 #3
0
 /// <summary>
 /// Actualiza la base de datos en la pregunta
 /// con la respuesta seleccionada
 /// y vincula la referencia a la solucion en la pregunta
 /// </summary>
 /// <param name="resp"></param>
 /// <param name="preg"></param>
 public static void SolucionarPregunta(Respuesta resp, Pregunta preg)
 {
     if (preg.EstaSolucionada() == false)
     {
         ABMPregunta.UpdateSolucionPregunta(preg.IdPregunta, resp.IdRespuesta);
         preg.Solucion   = resp;
         preg.IdSolucion = resp.IdRespuesta;
         preg.Estado     = "Solucionada";
     }
 }
コード例 #4
0
        /// <summary>
        /// Retorna una lista de preguntas con sus listas de respuestas cargadas
        /// </summary>
        /// <returns></returns>
        public static List <Pregunta> ObtenerTodasLasPreguntas()
        {
            List <Pregunta> todasLasPreguntas = ABMPregunta.GetPreguntas();


            foreach (Pregunta p in todasLasPreguntas)
            {
                string estadoInicial = p.Estado;
                p.ChequearEstado();
                string estadoFinal = p.Estado;

                if (estadoInicial != estadoFinal)
                {
                    // Se debe cambiar el estado de la pregunta en la base de datos
                    ABMPregunta.ActualizarEstado(p.IdPregunta, estadoFinal);
                }
            }
            todasLasPreguntas.ForEach(p => p.UserPregunta = ABMUsuario.GetUsuario(p.IdUserPregunta));
            todasLasPreguntas.ForEach(p => CargarListaRespuestas(p));
            return(todasLasPreguntas);
        }
コード例 #5
0
 /// <summary>
 /// Elimina una pregunta de la base de datos
 /// y la quita de la lista de preguntas del usuario
 /// </summary>
 /// <param name="preg"></param>
 public static void EliminarPregunta(Pregunta preg)
 {
     ABMPregunta.BajaPregunta(preg.IdPregunta);
     preg.UserPregunta.Preguntas.Remove(preg);
 }