Ler em inglês

Partilhar via


XsdDataContractExporter Classe

Definição

Permite a transformação de um conjunto de tipos .NET que são usados em contratos de dados em um arquivo de esquema XML (.xsd).

C#
public class XsdDataContractExporter
Herança
XsdDataContractExporter

Exemplos

O exemplo a seguir cria uma instância do XsdDataContractExporter e chama o Export(Type) método .

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

Para obter mais informações sobre essa API, consulte Comentários sobre a API Suplementar para XsdDataContractExporter.

Construtores

XsdDataContractExporter()

Inicializa uma nova instância da classe XsdDataContractExporter.

XsdDataContractExporter(XmlSchemaSet)

Inicializa uma nova instância da classe XsdDataContractExporter com o conjunto de esquemas especificado.

Propriedades

Options

Obtém ou define um ExportOptions que contém opções que podem ser definidas para a operação de exportação.

Schemas

Obtém a coleção de esquemas XML exportados.

Métodos

CanExport(ICollection<Assembly>)

Obtém um valor que indica se o conjunto de tipos CLR (Common Language Runtime) contidos em um conjunto de assemblies pode ser exportado.

CanExport(ICollection<Type>)

Obtém um valor que indica se o conjunto de tipos CLR (Common Language Runtime) contidos em um ICollection<T> pode ser exportado.

CanExport(Type)

Obtém um valor que indica se o tipo CLR (Common Language Runtime) especificado pode ser exportado.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
Export(ICollection<Assembly>)

Transforma os tipos contidos na coleção especificada de assemblies.

Export(ICollection<Type>)

Transforma os tipos contidos no ICollection<T> passado para este método.

Export(Type)

Transforma o tipo de .NET Framework especificado em um esquema XSD (linguagem de definição de esquema XML).

GetHashCode()

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

(Herdado de Object)
GetRootElementName(Type)

Retorna o nome e namespace de nível superior para o Type.

GetSchemaType(Type)

Retorna o tipo de esquema XML para o tipo especificado.

GetSchemaTypeName(Type)

Retorna o nome e o namespace do contrato para o Type.

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