none
xsd.exe RRS feed

Todas las respuestas

  • hola,

    No pude acceder al link, pero lo busque y me imagino que te refieres a este:
    Lo que todo desarrollador debería saber sobre serialización a XML en .NET (y cómo afecta a los Web Services)

    Tengo una consulta, la clases Persona que te refieres que estas usando la generaste completa con el xsd.exe, o la copiaste de la pagina ?

    Si la copiaste ten cuidado ya que no esta complata, al final pone "// ... así continúa ...", o sea falta codigo, y de esta forma no podras utilizarla.

    Podrias postear la clase que estas utilizando, para ver que le falta.

    Te comento probe ejecutar el comando y encontre algunos problemas, como por ejemplo hay una palabra "Señorita", que el encoding no reconoce y falla el comando, lo que hice fue ponerla "Senorita", para probar, de esta forma se ejecuto correctamente.

    Por supuesto esta la ejecute desde el "Visual Studio 2008 Command Prompt"

    Pero al final me genero lo siguiente:
    Prueba de agregar este a tu codigo a ver si funciona
    //------------------------------------------------------------------------------
    // <auto-generated>
    //     This code was generated by a tool.
    //     Runtime Version:2.0.50727.3053
    //
    //     Changes to this file may cause incorrect behavior and will be lost if
    //     the code is regenerated.
    // </auto-generated>
    //------------------------------------------------------------------------------
    
    using System.Xml.Serialization;
    
    // 
    // This source code was auto-generated by xsd, Version=2.0.50727.3038.
    // 
    
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
    [System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
    public partial class personas {
        
        private personaType[] personaField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("persona", Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public personaType[] persona {
            get {
                return this.personaField;
            }
            set {
                this.personaField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class personaType {
        
        private tituloType tituloField;
        
        private bool tituloFieldSpecified;
        
        private nombreType nombreField;
        
        private string edadField;
        
        private direccionType direccionField;
        
        private generoType generoField;
        
        private string colorOjosField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public tituloType titulo {
            get {
                return this.tituloField;
            }
            set {
                this.tituloField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public bool tituloSpecified {
            get {
                return this.tituloFieldSpecified;
            }
            set {
                this.tituloFieldSpecified = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public nombreType nombre {
            get {
                return this.nombreField;
            }
            set {
                this.nombreField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, DataType="integer")]
        public string edad {
            get {
                return this.edadField;
            }
            set {
                this.edadField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public direccionType direccion {
            get {
                return this.direccionField;
            }
            set {
                this.direccionField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public generoType genero {
            get {
                return this.generoField;
            }
            set {
                this.generoField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlAttributeAttribute()]
        public string colorOjos {
            get {
                return this.colorOjosField;
            }
            set {
                this.colorOjosField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    public enum tituloType {
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("Sr.")]
        Sr,
        
        /// <remarks/>
        [System.Xml.Serialization.XmlEnumAttribute("Sra.")]
        Sra,
        
        /// <remarks/>
        Senorita,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class nombreType {
        
        private string primerNombreField;
        
        private string segundoNombreField;
        
        private string apellidosField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string primerNombre {
            get {
                return this.primerNombreField;
            }
            set {
                this.primerNombreField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string segundoNombre {
            get {
                return this.segundoNombreField;
            }
            set {
                this.segundoNombreField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string apellidos {
            get {
                return this.apellidosField;
            }
            set {
                this.apellidosField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class generoType {
        
        private bool itemField;
        
        private ItemChoiceType itemElementNameField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute("hombre", typeof(bool), Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        [System.Xml.Serialization.XmlElementAttribute("mujer", typeof(bool), Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        [System.Xml.Serialization.XmlChoiceIdentifierAttribute("ItemElementName")]
        public bool Item {
            get {
                return this.itemField;
            }
            set {
                this.itemField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlIgnoreAttribute()]
        public ItemChoiceType ItemElementName {
            get {
                return this.itemElementNameField;
            }
            set {
                this.itemElementNameField = value;
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Xml.Serialization.XmlTypeAttribute(IncludeInSchema=false)]
    public enum ItemChoiceType {
        
        /// <remarks/>
        hombre,
        
        /// <remarks/>
        mujer,
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "2.0.50727.3038")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class direccionType {
        
        private string calleField;
        
        private string numeroField;
        
        private string numeroDepartamentoField;
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string calle {
            get {
                return this.calleField;
            }
            set {
                this.calleField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string numero {
            get {
                return this.numeroField;
            }
            set {
                this.numeroField = value;
            }
        }
        
        /// <remarks/>
        [System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified)]
        public string numeroDepartamento {
            get {
                return this.numeroDepartamentoField;
            }
            set {
                this.numeroDepartamentoField = value;
            }
        }
    }
    
    Esta clase puedes utilizarla sin problemas, por ahi lo unico que deberias verificar son los namespaces.

    Espero te sea de utilidad.
    Saludos


    Leandro Tuttini
    miércoles, 22 de abril de 2009 16:39