internal static List<Respuestas> Listar_Resp_de_Preg(int id_Preg) { List<Respuestas> lista = new List<Respuestas>(); SqlConnection conexion = new SqlConnection(Conexion.Cnn); SqlCommand comando = new SqlCommand("RESPUESTAS_DE_PREGUNTAS", conexion); comando.CommandType = System.Data.CommandType.StoredProcedure; Respuestas Una_resp = null; comando.Parameters.AddWithValue("@ID_PREG", id_Preg); try { conexion.Open(); SqlDataReader dr = comando.ExecuteReader(); if (dr.HasRows) { //id_Preg = PerPregunta.GetInstancia().Buscar_Pregunta(id_Preg); while (dr.Read()) { Una_resp = new Respuestas((int)dr["NUM_RESP"], (string)dr["TEXTO_RESP"], (bool)dr["CORRECTA"]); lista.Add(Una_resp); } } dr.Close(); } catch (Exception ex) { throw ex; } finally { conexion.Close(); } return lista; }
internal static void AltaResp(Respuestas pResp, SqlTransaction pTransaccion) { SqlCommand comando = new SqlCommand("REG_RESPUESTA", pTransaccion.Connection); comando.CommandType = CommandType.StoredProcedure; comando.Parameters.AddWithValue("@NUM_RESP", pResp.NUM_RESP); comando.Parameters.AddWithValue("@TEXTO_RESP", pResp.TEXTO_RESP); comando.Parameters.AddWithValue("@CORRECTA", pResp.CORRECTA); SqlParameter Retorno = new SqlParameter("@Retorno", SqlDbType.Int); Retorno.Direction = ParameterDirection.ReturnValue; comando.Parameters.Add(Retorno); try { comando.Transaction = pTransaccion; comando.ExecuteNonQuery(); int devolucion = Convert.ToInt32(Retorno.Value); if (devolucion == -1) throw new Exception("Ya existe ese numero de respuesta"); else if (devolucion == -2) throw new Exception("Error al ingresar Respuesta"); } catch (Exception ex) { throw ex; } }