Ler en inglés

Compartir por


ExportOptions Clase

Definición

Representa las opciones que se pueden establecer para XsdDataContractExporter.

C#
public class ExportOptions
Herencia
ExportOptions

Ejemplos

En el ejemplo siguiente se crea una instancia de la clase ExportOptions y se agrega un tipo (Possessions) a la colección que ha devuelto la propiedad KnownTypes.

A continuación XsdDataContractExporter exporta los esquemas de los tipos, incluso el tipo Possessions agregado a la colección.

C#
using System;
using System.Xml;
using System.Runtime.Serialization;
using System.Xml.Schema;

public class Program
{
    public static void Main()
    {
        try
        {
            ExportXSD();
        }
        catch (Exception exc)
        {
            Console.WriteLine("Message: {0} StackTrace:{1}", exc.Message, exc.StackTrace);
        }
        finally
        {
            Console.ReadLine();
        }
    }

    static void ExportXSD()
    {
        XsdDataContractExporter exporter = new XsdDataContractExporter();
        if (exporter.CanExport(typeof(Employee)))
        {
            exporter.Export(typeof(Employee));
            Console.WriteLine("number of schemas: {0}", exporter.Schemas.Count);
            Console.WriteLine();
            XmlSchemaSet mySchemas = exporter.Schemas;

            XmlQualifiedName XmlNameValue = exporter.GetRootElementName(typeof(Employee));
            string EmployeeNameSpace = XmlNameValue.Namespace;

            foreach (XmlSchema schema in mySchemas.Schemas(EmployeeNameSpace))
            {
                schema.Write(Console.Out);
            }
        }
    }

    static void GetXmlElementName()
    {
        XsdDataContractExporter myExporter = new XsdDataContractExporter();
        XmlQualifiedName xmlElementName =myExporter.GetRootElementName(typeof(Employee));
        Console.WriteLine("Namespace: {0}", xmlElementName.Namespace);
        Console.WriteLine("Name: {0}", xmlElementName.Name);
        Console.WriteLine("IsEmpty: {0}", xmlElementName.IsEmpty);
    }

    [DataContract(Namespace = "www.Contoso.com/Examples/")]
    public class Employee
    {
        [DataMember]
        public string EmployeeName;
        [DataMember]
        private string ID;
    }
}

Comentarios

XsdDataContractExporter se utiliza para generar los esquemas XSD a partir de un tipo o ensamblado. También puede usar XsdDataContractImporter para generar código de .NET Framework a partir de un documento de esquema.

Para obtener más información sobre cómo importar y exportar esquemas, vea Importación y exportación de esquemas desde clases.

KnownTypes utiliza la propiedad DataContractSerializer para incluir tipos que pueden leerse en un gráfico de objetos. Para obtener más información sobre el contrato de datos y los tipos conocidos, vea Tipos conocidos del contrato de datos.

Para obtener más información sobre los contratos de datos, consulte Utilización de contratos de datos.

Constructores

ExportOptions()

Inicializa una nueva instancia de la clase ExportOptions.

Propiedades

DataContractSurrogate

Obtiene o establece un suplente de serialización.

KnownTypes

Obtiene la colección de tipos que se pueden encontrar durante la serialización o la deserialización.

Métodos

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Se aplica a

Produto Versións
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

Consulte también