Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/12/2008, 17:49
chcma
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 20 años, 11 meses
Puntos: 7
Clase serializable XML - C#

Buenas noches foreros desde Spain !!!

Vereis, estoy haciendo una clase que se pueda serializar. Y en principio me va bien. Lo que pasa que una de las propiedades quiero ponerla como atributo de uno de los elementos que hay dentro.

Es decir, mi clase actualmente es esta:
Código:
    [XmlRootAttribute(Namespace = "", IsNullable = false)]
    public class ClsPersona
    {        
        [XmlElement("Nombre")]
        public string Nombre{ get; set; }

        [XmlAttribute("Dni")]
        public string Dni { get; set; }


        [XmlElement("Apellido")]
        public string Apellido { get; set; }


        public ClsPersona() { }
        public ClsPersona(string nombrePersona, string dniPersona, string apellidoPersona)
        {
            this.Nombre = nombrePersona;
            this.Dni = dniPersona;
            this.Apellido = apellidoPersona;
        }
    }
Muy bien, pues el XML que me devuelve la serialización es este:
Código:
<?xml version="1.0" encoding="utf-8"?>
<ClsPersona xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Dni="7164">
  <Nombre>carlos</Nombre>
  <Apellido>hevia</Apellido>
</ClsPersona>

Como podeis ver, me lo hace prácticamente perfecto. Pero... ¿Como podría indicar que el attributo DNI sea del nodo NOMBRE en vez del nodo padre????

En fin, espero puedan resolverme esta dudilla...

Saludos !!!
__________________
Charlie.