Lire en anglais

Partager via


ExportOptions Classe

Définition

Représente les options qui peuvent être définies pour une classe XsdDataContractExporter.

C#
public class ExportOptions
Héritage
ExportOptions

Exemples

L’exemple suivant crée une instance de la classe ExportOptions et ajoute un type (Possessions) à la collection retournée par la propriété KnownTypes.

La classe XsdDataContractExporter exporte ensuite les schémas des types, y compris le type Possessions ajouté à la collection.

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

Remarques

La classe XsdDataContractExporter sert à générer des schémas XSD depuis un type ou un assembly. Vous pouvez également utiliser pour générer du XsdDataContractImporter code .NET Framework à partir d’un document de schéma.

Pour plus d’informations sur l’importation et l’exportation de schémas, consultez Importation et exportation de schémas à partir de classes.

La propriété KnownTypes est utilisée par la classe DataContractSerializer pour inclure des types qui peuvent être lus dans un graphique d'objet. Pour plus d’informations sur le contrat de données et les types connus, consultez Types connus de contrat de données.

Pour plus d’informations sur les contrats de données, consultez Utilisation des contrats de données.

Constructeurs

ExportOptions()

Initialise une nouvelle instance de la classe ExportOptions.

Propriétés

DataContractSurrogate

Obtient ou définit un substitut de sérialisation.

KnownTypes

Obtient la collection des types qui peuvent être rencontrés pendant la sérialisation ou la désérialisation.

Méthodes

Equals(Object)

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
GetHashCode()

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Produit Versions
.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

Voir aussi