/// <summary> /// Metodo que devuelve todas los conjuntos de preguntas cargados en base de datos /// </summary> /// <returns></returns> public List <ConjuntoPreguntas> GetConjuntoPreguntas() { List <ConjuntoPreguntas> listaConjuntos = new List <ConjuntoPreguntas>(); try { using (var db = new TrabajoDbContext()) { using (var UoW = new UnitOfWork(db)) { listaConjuntos = (List <ConjuntoPreguntas>)UoW.RepositorioConjuntoPregunta.GetAll(); } } } catch (Exception ex) { Bitacora.GuardarLog("ControladorPreguntas.GetConjuntoPreguntas" + ex.ToString()); } return(listaConjuntos); }
/// <summary> /// Metodo que devuelve todas las dificultades cargadas en base de datos /// </summary> /// <returns></returns> public List <Dificultad> GetDificultades() { List <Dificultad> listaDificultades = new List <Dificultad>(); try { using (var db = new TrabajoDbContext()) { using (var UoW = new UnitOfWork(db)) { listaDificultades = (List <Dificultad>)UoW.RepositorioDificultades.GetAll(); } } } catch (Exception ex) { Bitacora.GuardarLog("ControladorPreguntas.GetDificultades" + ex.ToString()); } return(listaDificultades); }
/// <summary> /// Obtiene las preguntas de internet y se cargan en la base de datos. /// </summary> /// <param name="pCantidad"></param> /// <param name="pConjunto"></param> /// <param name="pCategoria"></param> /// <param name="pDificultad"></param> /// <returns></returns> public void GetPreguntasOnline(string pCantidad, string pConjunto, string pCategoria, string pDificultad) { try { CategoriaPregunta categoria; using (var db = new TrabajoDbContext()) { using (var UoW = new UnitOfWork(db)) { categoria = db.Categorias.Find(pCategoria); } } IEstrategiaObtenerPreguntas estrategia = this.GetEstrategia(pConjunto); List <Pregunta> preguntas = estrategia.getPreguntas(pCantidad, pConjunto, pDificultad, categoria); CargarPreguntas(preguntas); } catch (NotImplementedException ex) { Bitacora.GuardarLog("ControladorPreguntas.GetPreguntasOnline: " + ex.Message); } }
private void Registrar_Click(object sender, EventArgs e) { string nombreUsuario = nuevoUsuario.Text.Trim(); string contrasenia1 = nuevaContrasenia.Text.Trim(); string contrasenia2 = nuevaContrasenia2.Text.Trim(); if (nombreUsuario == string.Empty) { errorProvider2.SetError(nuevoUsuario, "Debe ingresar un usuario"); nuevoUsuario.Focus(); } else if ((contrasenia1 == string.Empty) || (contrasenia1 != contrasenia2)) { errorProvider1.SetError(nuevaContrasenia, "Las contraseñas ingresadas no coinciden"); nuevaContrasenia.Focus(); } else { try { var usr = ControladorAdministrativo.GetUsuario(nombreUsuario); errorProvider2.SetError(nuevoUsuario, "Usuario ya existe"); var bitacora = new Bitacora(); bitacora.GuardarLog("RegistrarUsuario ya existe"); nuevoUsuario.Focus(); } catch (UsrNoEncontradoException ex) { ControladorAdministrativo.GuardarUsuario(nombreUsuario, contrasenia1); MessageBox.Show("Usuario registrado correctamente"); this.Hide(); Ventana_Inicio vInicio = new Ventana_Inicio(); vInicio.ShowDialog(); this.Close(); } } }
/// <summary> /// Dada una lista de preguntas, las inserta en la base de datos /// </summary> public void CargarPreguntas(List <Pregunta> pPreguntas) { try { using (var db = new TrabajoDbContext()) { using (var UoW = new UnitOfWork(db)) { foreach (Pregunta pre in pPreguntas) { if (db.Preguntas.Find(pre.Id) == null) { CategoriaPregunta categoria = db.Categorias.Find(pre.Categoria.Id); Dificultad dificultad = db.Dificultades.Find(pre.Dificultad.Id); ConjuntoPreguntas conjunto = db.ConjuntoPreguntas.Find(pre.Conjunto.Id); ///Si la categoria esta en la base de datos la referencia, ///sino crea una nueva y la inserta en la db if (categoria == null) { CategoriaPregunta categoriaNueva = new CategoriaPregunta(pre.Categoria.Id); } else { pre.Categoria = categoria; } ///Si la dificultad esta en la base de datos la referencia, ///sino crea una nueva y la inserta en la db if (dificultad == null) { Dificultad dificultadNueva = new Dificultad(pre.Dificultad.Id); } else { pre.Dificultad = dificultad; } ///Si el conjunto esta en la base de datos la referencia, ///sino crea uno nuevo y la inserta en la db if (conjunto == null) { ConjuntoPreguntas conjuntoNuevo = new ConjuntoPreguntas(pre.Conjunto.Id); } else { pre.Conjunto = conjunto; } UoW.RepositorioPreguntas.Add(pre); } } UoW.Complete(); } } } catch (Exception ex) { Bitacora.GuardarLog(ex.Message.ToString()); } }