Ler em inglês

Partilhar via


ExportOptions Classe

Definição

Representa as opções que podem ser definidas para um XsdDataContractExporter.

C#
public class ExportOptions
Herança
ExportOptions

Exemplos

O exemplo a seguir cria uma instância da ExportOptions classe e adiciona um tipo (Possessions) à coleção retornada pela KnownTypes propriedade .

O XsdDataContractExporter então exporta os esquemas dos tipos, incluindo o Possessions tipo adicionado à coleção.

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;
    }
}

Comentários

O XsdDataContractExporter é usado para gerar esquemas XSD de um tipo ou assembly. Você também pode usar o XsdDataContractImporter para gerar .NET Framework código de um documento de esquema.

Para obter mais informações sobre como importar e exportar esquemas, consulte Esquemas de importação e exportação e exportação de esquemas de classes.

A KnownTypes propriedade é usada pelo DataContractSerializer para incluir tipos que podem ser lidos em um grafo de objeto. Para obter mais informações sobre o contrato de dados e tipos conhecidos, consulte Tipos conhecidos do contrato de dados.

Para obter mais informações sobre contratos de dados, confira Como usar contratos de dados.

Construtores

ExportOptions()

Inicializa uma nova instância da classe ExportOptions.

Propriedades

DataContractSurrogate

Obtém ou define um substituto de serialização.

KnownTypes

Obtém a coleção de tipos que podem ser encontrados durante a serialização ou a desserialização.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Produto Versões
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.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

Confira também