protected void btnGuardar_Click(object sender, EventArgs e) { long resp; CilindroServiceClient servCilindro = new CilindroServiceClient(); CilindroBE cilindro = new CilindroBE(); try { cilindro.Ano = txtAno.Text; FabricanteBE fab = new FabricanteBE(); fab.Codigo_Fabricante = txtEmpresa.Text; cilindro.Fabricante = fab; cilindro.Serial_Cilindro = txtCodigo.Text; cilindro.Codigo_Cilindro = (txtAno.Text).Substring(2) + "" + txtEmpresa.Text + "" + txtCodigo.Text; VehiculoBE veh = new VehiculoBE(); veh.Id_Vehiculo = (lstPlacas.SelectedValue); cilindro.Vehiculo = veh; Tipo_UbicacionBE tipUbica = new Tipo_UbicacionBE(); tipUbica.Id_Tipo_Ubica = lstUbicacion.SelectedValue; tipUbica.Nombre_Ubicacion = lstUbicacion.SelectedItem.Text; cilindro.Tipo_Ubicacion = tipUbica; TamanoBE tam = new TamanoBE(); tam.Id_Tamano = lstTamano.SelectedValue; cilindro.NTamano = tam; if (txtCil.Text == cilindro.Codigo_Cilindro) { resp = servCilindro.RegistrarCilindro(cilindro); if (resp != -1) { MessageBox.Show("El Cilindro fue registrado satisfactoriamente", "Registrar Cilindro"); } else { Response.Redirect("~/About.aspx"); } } else { MessageBox.Show("El código escrito no coincide con los datos ingresados", "Registrar Cilindro"); txtCodigoCilindro.Text = ""; } } catch (Exception ex) { Response.Redirect("~/About.aspx"); } finally { servCilindro.Close(); Response.Redirect("~/Cilindros/frmRegistrarCilindro.aspx"); } }
public CilindroBE ConsultarCilindro(string cilindro) { CilindroBE cil = new CilindroBE(); try { string nameSP = "ConsultarCilindros"; BaseDatos db = new BaseDatos(); db.Conectar(); db.CrearComandoSP(nameSP); DbParameter[] parametros = new DbParameter[3]; parametros[0] = db.Comando.CreateParameter(); parametros[0].ParameterName = "vrCodigo_Cilindro"; parametros[0].Value = cilindro; parametros[0].Direction = ParameterDirection.Input; db.Comando.Parameters.Add(parametros[0]); parametros[1] = db.Comando.CreateParameter(); parametros[1].ParameterName = "vrCodResult"; parametros[1].Value = 0; parametros[1].Direction = ParameterDirection.Output; db.Comando.Parameters.Add(parametros[1]); parametros[2] = db.Comando.CreateParameter(); parametros[2].ParameterName = "vrDescResult"; parametros[2].Value = ""; parametros[2].Direction = ParameterDirection.Output; parametros[2].Size = 200; parametros[2].DbType = DbType.String; db.Comando.Parameters.Add(parametros[2]); DbDataReader datos = db.EjecutarConsulta(); CilindroBE c = null; while (datos.Read()) { try { c = new CilindroBE(); c.Id_Cilindro = datos.GetValue(0).ToString(); c.Ano = datos.GetString(1); c.Codigo_Cilindro = datos.GetString(2); c.Tipo_Cilindro = datos.GetString(3); c.Serial_Cilindro = datos.GetString(4); c.Fecha = datos.GetDateTime(5); FabricanteBE fab = new FabricanteBE(); fab.Nombre_Fabricante = (datos.GetValue(6).ToString()); c.Fabricante = fab; Tipo_UbicacionBE tipUbi = new Tipo_UbicacionBE(); tipUbi.Nombre_Ubicacion= datos.GetString(7); UbicacionBE ubi = new UbicacionBE(); ubi.Id_Ubicacion = datos.GetValue(8).ToString(); tipUbi.Ubicacion = ubi; c.Tipo_Ubicacion = tipUbi; TamanoBE tam = new TamanoBE(); tam.Tamano = (datos.GetString(9)); c.NTamano = tam; cil= c; } catch (InvalidCastException ex) { throw new Exception("Los tipos no coinciden.", ex); } catch (DataException ex) { throw new Exception("Error de ADO.NET.", ex); } } datos.Close(); db.Desconectar(); } catch (Exception ex) { throw new Exception("Error al acceder a la base de datos para obtener los CilindroBEs."); } return cil; }