示例#1
0
        public string respuesta(usuario usuario)
        {
            respuesta resp = new respuesta();

            XmlDocument miDocumentoXML = new XmlDocument();
            miDocumentoXML.Load(HttpContext.Current.Request.MapPath("~/ficheros/loginClientes.xml"));
            XmlNodeList miNodoList = miDocumentoXML.SelectNodes("//cliente[login='******' and password='******']");
            //BUSQUEDA XPATH DE EJEMPLO => boolean(//cliente[login='******' and password='******']) => true

            if (miNodoList.Count == 1)
            {
                resp.codigo = "0";
                resp.texto = "cliente ok";
                resp.vista = "login";
            }
            else if (miNodoList.Count == 0)
            {
                resp.codigo = "1";
                resp.texto = "cliente no existe";
                resp.vista = "login";
            }

            return new JavaScriptSerializer().Serialize(resp);
        }
示例#2
0
        public string respuestaNuevoUsuario(usuario usuario)
        {
            respuesta resp = new respuesta();
            XmlDocument miDocumentoXML = new XmlDocument();
            miDocumentoXML.Load(HttpContext.Current.Request.MapPath("~/ficheros/loginClientes.xml"));

            //Creo los elementos
            XmlElement clienteNuevo = miDocumentoXML.CreateElement("cliente");
            XmlElement nombre = miDocumentoXML.CreateElement("nombre");
            XmlElement apellido1 = miDocumentoXML.CreateElement("apellido1");
            XmlElement apellido2 = miDocumentoXML.CreateElement("apellido2");
            XmlElement tipoID = miDocumentoXML.CreateElement("tipoID");
            XmlElement ID = miDocumentoXML.CreateElement("ID");
            XmlElement login = miDocumentoXML.CreateElement("login");
            XmlElement fechaNacimiento = miDocumentoXML.CreateElement("fechaNacimiento");
            XmlElement password = miDocumentoXML.CreateElement("password");
            XmlElement direcciones = miDocumentoXML.CreateElement("direcciones");
            XmlElement telefonos = miDocumentoXML.CreateElement("telefonos");
            XmlElement faltaProd = miDocumentoXML.CreateElement("faltaProd");

            //Le añado el texto
            nombre.InnerText = usuario.Nombre;
            apellido1.InnerText = usuario.Apellido1;
            apellido2.InnerText = usuario.Apellido2;
            tipoID.InnerText = usuario.TipoID;
            ID.InnerText = usuario.ID;
            login.InnerText = usuario.Login;
            fechaNacimiento.InnerText = usuario.FechaNacimiento;
            password.InnerText = usuario.Password;
            faltaProd.InnerText = usuario.FaltaProd;

            //Los coloco en la parte del DOM de la que quiero que cuelguen
            clienteNuevo.AppendChild(nombre);
            clienteNuevo.AppendChild(apellido1);
            clienteNuevo.AppendChild(apellido2);
            clienteNuevo.AppendChild(tipoID);
            clienteNuevo.AppendChild(ID);
            clienteNuevo.AppendChild(login);
            clienteNuevo.AppendChild(fechaNacimiento);
            clienteNuevo.AppendChild(password);
            clienteNuevo.AppendChild(direcciones);
            clienteNuevo.AppendChild(telefonos);
            clienteNuevo.AppendChild(faltaProd);

            //Casos especiales => direcciones y telefonos
            List<string> direccionesList = usuario.Direcciones.Split(new char[] { ':' }).ToList();
            foreach (string dir in direccionesList)
            {
                if (dir != "")
                {
                    XmlElement direccion = miDocumentoXML.CreateElement("direccion");
                    direccion.InnerText = dir;
                    direcciones.AppendChild(direccion);
                }
            };

            List<string> telefonosList = usuario.Telefonos.Split(new char[] { ':' }).ToList();
            foreach (string telef in telefonosList)
            {
                if (telef != "")
                {
                    XmlElement telefono = miDocumentoXML.CreateElement("telefono");
                    telefono.InnerText = telef;
                    telefonos.AppendChild(telefono);
                }
            };

            //Coloco el nuevo nodo en el documento XML
            miDocumentoXML.DocumentElement.AppendChild(clienteNuevo);

            //Cuardo el documento XML
            //Entre try/catch porque me interesa tratar la excepción como respuesta negativa por parte del servidor
            try {
                miDocumentoXML.Save(HttpContext.Current.Request.MapPath("~/ficheros/loginClientes.xml"));

                resp.codigo = "0";
                resp.texto = "usuario registrado correctamente";
                resp.vista = "registro_cliente";
            }
            catch (XmlException ex)
            {
                resp.codigo = "1";
                resp.texto = "fallo en registro";
                resp.vista = "registro_cliente";
            }
            return new JavaScriptSerializer().Serialize(resp);
        }