private void btnAceptar_Click(object sender, EventArgs e) { try { if (!string.IsNullOrWhiteSpace(txtNombreIdioma.Text)) { List<Componente> componentes = new List<Componente>(); Componente componente; CultureInfo culturaElegida = (CultureInfo)cboCulturas.SelectedItem; DataTable tabla = (DataTable)this.gridTraduccion.DataSource; foreach (DataRow row in tabla.Rows) { componente = new Componente(); componente.Idioma = new Idioma(); componente.Idioma.ID = culturaElegida.Name; componente.Idioma.Nombre = txtNombreIdioma.Text.Trim(); componente.Leyenda = new Leyenda(); componente.Leyenda.ID = Convert.ToInt32(row[0]); componente.Traduccion = string.IsNullOrWhiteSpace(Convert.ToString(row[2])) ? Convert.ToString(row[1]) : Convert.ToString(row[2]); componentes.Add(componente); } if (GestorIdioma.ObtenerInstancia().InsertarNuevoIdioma(componentes)) { MessageBox.Show("El idioma se ha creado correctamente", "Gestor de Idioma", MessageBoxButtons.OK, MessageBoxIcon.Information); LimpiarComponentes(); } } else { MessageBox.Show("Debe ingresar un nombre de Idioma.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } catch (Exception ex) { string mensajeError = ErrorManager.ObtenerInstancia().LoguearGenerarMensajeError(ex, MensajeError.NuevoIdiomaFallido, FormHelper.ObtenerInstancia().TraerUltimoIdioma()); MessageBox.Show(mensajeError, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public List<Componente> TraerLeyendasTodas(string idIdioma) { try { List<Componente> componentes = new List<Componente>(); Componente componente = null; using (SqlConnection conexion = Conexion.ObtenerInstancia().CrearConexionSQL()) { using (SqlCommand comando = conexion.CreateCommand()) { comando.CommandType = CommandType.StoredProcedure; comando.CommandText = "SPS_Componentes_Traduccion_Todos"; comando.Parameters.Add(new SqlParameter("@IdIdioma", idIdioma)); comando.Connection.Open(); SqlDataReader dataReader = comando.ExecuteReader(CommandBehavior.CloseConnection); while (dataReader.Read()) { componente = new Componente(); componente.Idioma = new Idioma(); componente.Idioma.ID = dataReader["IDIOMA_ID"].ToString(); componente.Idioma.Nombre = dataReader["IDIOMA_NOMBRE"].ToString(); componente.Leyenda = new Leyenda(); componente.Leyenda.ID = Convert.ToInt16(dataReader["LEYENDA_ID"]); componente.Leyenda.Nombre = dataReader["LEYENDA_NOMBRE"].ToString(); componente.Traduccion = dataReader["TRADUCCION"].ToString(); componentes.Add(componente); } } } return componentes; } catch (AccesoBDException ex) { throw new SecurityDAOException("TraerLeyendasTodas", "AccesoBD", ex.Message, ex); } catch (SqlException ex) { throw new SecurityDAOException("TraerLeyendasTodas", "SQL", ex.Message, ex); } catch (Exception ex) { throw new SecurityDAOException("TraerLeyendasTodas", "General: " + ex.GetType().ToString(), ex.Message, ex); } }
public bool InsertarTraduccion(Componente componente) { try { int filasAfectadas = 0; using (SqlConnection conexion = Conexion.ObtenerInstancia().CrearConexionSQL()) { using (SqlCommand comando = conexion.CreateCommand()) { comando.CommandType = CommandType.StoredProcedure; comando.CommandText = "SPI_Leyenda_Idioma"; comando.Parameters.Add(new SqlParameter("@IdIdioma", componente.Idioma.ID)); comando.Parameters.Add(new SqlParameter("@IdLeyenda", componente.Leyenda.ID)); comando.Parameters.Add(new SqlParameter("@Traduccion", componente.Traduccion)); comando.Connection.Open(); filasAfectadas = comando.ExecuteNonQuery(); } } if (filasAfectadas > 0) { return true; } else { return false; } } catch (AccesoBDException ex) { throw new SecurityDAOException("InsertarTraduccion", "AccesoBD", ex.Message, ex); } catch (SqlException ex) { throw new SecurityDAOException("InsertarTraduccion", "SQL", ex.Message, ex); } catch (Exception ex) { throw new SecurityDAOException("InsertarTraduccion", "General: " + ex.GetType().ToString(), ex.Message, ex); } }