public CamposRegistro(Banco banco) { this.banco = banco; }
// Btn GUARDAR ( aquí va la lógica del creación del xml y registro de datos private void idGuardarRegistro_Click(object sender, EventArgs e) { //FileStream fichero = new FileStream("data.xml", FileMode.OpenOrCreate); //Cliente cliente = new Cliente(); FileStream fichero = null; Cliente cliente = null; // Guardamos los campos registrados strDni = idDniRegistro.Text; strNombre = idRegistroNombre.Text; strDireccion = idDireccRegistro.Text; edad = Convert.ToInt32(idEdadRegistro.Text); tlfn = Convert.ToInt32(idTlfnRegistro.Text); cc = idCCregistro.Text; if (texBoxIsEmpty() && DNIvalido(strDni) && ValidarTelefono(tlfn.ToString()) && ValidaIban()) { try { cliente = new Cliente(); // Damos valores a los atributos del objeto cliente cliente.Dni = strDni; cliente.Nombre = strNombre; cliente.Direccion = strDireccion; cliente.Edad = edad; cliente.Tlfn = tlfn; cliente.Cc = cc; //Comprobamos que el fichero existe if (!File.Exists("data.xml")) { // Añadimos el cliente a la lista del objeto banco fichero = new FileStream("data.xml", FileMode.Create); banco.AddCliente(cliente); // Creamos el formateador XML XmlSerializer format = new XmlSerializer(banco.GetType()); format.Serialize(fichero, banco); fichero.Close(); } else { //Si el fichero ya existe.... //...leemos contenido del XML y guardamos los objetos clientes en un objeto banco (lista de clientes) //Leemos el fichero y guardamos los objetos del xml en una lista de objetos fichero = new FileStream("data.xml", FileMode.Open); //Creamos el formateador XML XmlSerializer format = new XmlSerializer(banco.GetType()); banco = (Banco)format.Deserialize(fichero); fichero.Close(); //Añadimos nuevo objeto cliente a nuestro fichero Deserializado ( banco ) fichero = new FileStream("data.xml", FileMode.Create); banco.AddCliente(cliente); XmlSerializer format2 = new XmlSerializer(banco.GetType()); format2.Serialize(fichero, banco); fichero.Close(); } MessageBox.Show("¡ Registro Ok !"); } catch (IOException ex) { MessageBox.Show("Error: " + ex.Message); } finally { //Se ejecuta ocurra o no la excepción if (fichero != null) { fichero.Close(); } } } else { MessageBox.Show("Revise que los campos no estén vacíos.\nCompruebe el correo, la constraseña y que el número" + "de teléfono sea correcto.\nCompruebe IBAN"); } }