protected void Page_Load(object sender, EventArgs e) { direccion = Request.QueryString["direccion"]; modificar = direccion != null; cliente = (Cliente)Session["Cliente"]; cXml.lecturaXMLDatos(Server.MapPath("~/ficheros/datosInteres.xml"), list_TipoVia, "Calle"); if (IsPostBack) { dir = new Direccion(); if(modificar) dir.id = direccion; rellenarDireccion(); } else { if (modificar) { dir = cXml.fabricarDireccion(Server.MapPath("~/ficheros/Direcciones.xml"), direccion); list_TipoVia.SelectedIndex = list_TipoVia.Items.IndexOf(list_TipoVia.Items.FindByText(dir.tipoVia)); text_NombreVia.Text = dir.nombreVia; text_Numero.Text = dir.numero; text_Piso.Text = dir.piso; text_Puerta.Text = dir.puerta; text_Urba.Text = dir.urba; text_Bloque.Text = dir.bloque; text_Escalera.Text = dir.escalera; text_Observaciones.Text = dir.observaciones; text_Localdidad.Text = dir.localidad; text_CP.Text = dir.cp; check_Habitual.Checked = dir.habitual == "Si" ? true : false; } } }
public void añadirDireccion(string path, Direccion dir) { XmlDocument xDoc = new XmlDocument(); xDoc.Load(path); XmlNode padre = xDoc.FirstChild; XmlNode hijo = xDoc.CreateNode(XmlNodeType.Element, "Direccion", null); XmlNode nuevo = xDoc.CreateNode(XmlNodeType.Element, "ID", null); nuevo.InnerText = dir.id; hijo.AppendChild(nuevo); nuevo = xDoc.CreateNode(XmlNodeType.Element, "TipoVia", null); nuevo.InnerText = dir.tipoVia; hijo.AppendChild(nuevo); nuevo = xDoc.CreateNode(XmlNodeType.Element, "NombreVia", null); nuevo.InnerText = dir.nombreVia; hijo.AppendChild(nuevo); nuevo = xDoc.CreateNode(XmlNodeType.Element, "Numero", null); nuevo.InnerText = dir.numero; hijo.AppendChild(nuevo); nuevo = xDoc.CreateNode(XmlNodeType.Element, "Piso", null); nuevo.InnerText = dir.piso; hijo.AppendChild(nuevo); nuevo = xDoc.CreateNode(XmlNodeType.Element, "Puerta", null); nuevo.InnerText = dir.puerta; hijo.AppendChild(nuevo); nuevo = xDoc.CreateNode(XmlNodeType.Element, "Urba", null); nuevo.InnerText = dir.urba; hijo.AppendChild(nuevo); nuevo = xDoc.CreateNode(XmlNodeType.Element, "Bloque", null); nuevo.InnerText = dir.bloque; hijo.AppendChild(nuevo); nuevo = xDoc.CreateNode(XmlNodeType.Element, "Escalera", null); nuevo.InnerText = dir.escalera; hijo.AppendChild(nuevo); nuevo = xDoc.CreateNode(XmlNodeType.Element, "Observaciones", null); nuevo.InnerText = dir.observaciones; hijo.AppendChild(nuevo); nuevo = xDoc.CreateNode(XmlNodeType.Element, "Localidad", null); nuevo.InnerText = dir.localidad; hijo.AppendChild(nuevo); nuevo = xDoc.CreateNode(XmlNodeType.Element, "CP", null); nuevo.InnerText = dir.cp; hijo.AppendChild(nuevo); nuevo = xDoc.CreateNode(XmlNodeType.Element, "Habitual", null); nuevo.InnerText = dir.habitual; hijo.AppendChild(nuevo); padre.AppendChild(hijo); xDoc.Save(path); }
public void modificarDireccion(string pathDireccion, string pathCliente, Direccion dir, bool modificar) { XmlDocument xDoc = new XmlDocument(); if (modificar) { xDoc.Load(pathDireccion); foreach (XmlNode xNode in xDoc.DocumentElement.SelectNodes("/Direcciones/Direccion")) { if (xNode.SelectSingleNode("ID").InnerText == dir.id) { xNode.SelectSingleNode("TipoVia").InnerText = dir.tipoVia; xNode.SelectSingleNode("NombreVia").InnerText = dir.nombreVia; xNode.SelectSingleNode("Numero").InnerText = dir.numero; xNode.SelectSingleNode("Piso").InnerText = dir.piso; xNode.SelectSingleNode("Puerta").InnerText = dir.puerta; xNode.SelectSingleNode("Urba").InnerText = dir.urba; xNode.SelectSingleNode("Bloque").InnerText = dir.bloque; xNode.SelectSingleNode("Escalera").InnerText = dir.escalera; xNode.SelectSingleNode("Observaciones").InnerText = dir.observaciones; xNode.SelectSingleNode("Localidad").InnerText = dir.localidad; xNode.SelectSingleNode("CP").InnerText = dir.cp; xNode.SelectSingleNode("Habitual").InnerText = dir.habitual; xDoc.Save(pathDireccion); break; } } xDoc.Load(pathCliente); foreach (XmlNode xNode in xDoc.DocumentElement.SelectNodes("/Clientes/Cliente")) { if (xNode.SelectNodes("Direccion") != null ) { foreach(XmlNode xxNode in xNode.SelectNodes("Direccion")) { if(xxNode.Attributes["ID"].Value == dir.id) { xxNode.InnerText = dir.nombreVia + "-" + dir.localidad; break; } } } } xDoc.Save(pathCliente); } else añadirDireccion(pathDireccion, dir); }
public Direccion fabricarDireccion(string path, string idDireccion) { Direccion direccion = new Direccion(idDireccion); XmlDocument xDoc = new XmlDocument(); xDoc.Load(path); foreach (XmlNode xNode in xDoc.DocumentElement.SelectNodes("/Direcciones/Direccion")) { if (xNode.SelectSingleNode("ID").InnerText == idDireccion) { direccion.tipoVia = xNode.SelectSingleNode("TipoVia").InnerText; direccion.nombreVia = xNode.SelectSingleNode("NombreVia").InnerText; direccion.numero = xNode.SelectSingleNode("Numero").InnerText; direccion.piso = xNode.SelectSingleNode("Piso").InnerText; direccion.puerta = xNode.SelectSingleNode("Puerta").InnerText; direccion.urba = xNode.SelectSingleNode("Urba").InnerText; direccion.escalera = xNode.SelectSingleNode("Escalera").InnerText; direccion.bloque = xNode.SelectSingleNode("Bloque").InnerText; direccion.observaciones = xNode.SelectSingleNode("Observaciones").InnerText; direccion.localidad = xNode.SelectSingleNode("Localidad").InnerText; direccion.cp = xNode.SelectSingleNode("CP").InnerText; direccion.habitual = xNode.SelectSingleNode("Habitual").InnerText; break; } } return direccion; }