Поделиться через


XsdDataContractExporter.CanExport Метод

Определение

Возвращает значение, указывающее, возможен ли экспорт типов (или набора типов) среды CLR.

Перегрузки

CanExport(ICollection<Assembly>)

Возвращает значение, указывающее, возможен ли экспорт набора типов среды CLR, содержащегося в наборе сборок.

CanExport(ICollection<Type>)

Возвращает значение, указывающее, возможен ли экспорт набора типов среды CLR, содержащегося в ICollection<T>.

CanExport(Type)

Возвращает значение, указывающее, возможен ли экспорт заданного типа среды CLR.

Комментарии

Не все типы среды CLR могут использоваться в контрактах данных. Дополнительные сведения о том, что можно сериализовать, см. в разделе Типы, поддерживаемые сериализатором контрактов данных.

CanExport(ICollection<Assembly>)

Исходный код:
XsdDataContractExporter.cs
Исходный код:
XsdDataContractExporter.cs
Исходный код:
XsdDataContractExporter.cs

Возвращает значение, указывающее, возможен ли экспорт набора типов среды CLR, содержащегося в наборе сборок.

public:
 bool CanExport(System::Collections::Generic::ICollection<System::Reflection::Assembly ^> ^ assemblies);
public bool CanExport (System.Collections.Generic.ICollection<System.Reflection.Assembly> assemblies);
member this.CanExport : System.Collections.Generic.ICollection<System.Reflection.Assembly> -> bool
Public Function CanExport (assemblies As ICollection(Of Assembly)) As Boolean

Параметры

assemblies
ICollection<Assembly>

Объект ICollection<T> класса Assembly, содержащий сборки с экспортируемыми типами.

Возвращаемое значение

Значение true, если типы можно экспортировать; в противном случае — значение false.

Применяется к

CanExport(ICollection<Type>)

Исходный код:
XsdDataContractExporter.cs
Исходный код:
XsdDataContractExporter.cs
Исходный код:
XsdDataContractExporter.cs

Возвращает значение, указывающее, возможен ли экспорт набора типов среды CLR, содержащегося в ICollection<T>.

public:
 bool CanExport(System::Collections::Generic::ICollection<Type ^> ^ types);
public bool CanExport (System.Collections.Generic.ICollection<Type> types);
member this.CanExport : System.Collections.Generic.ICollection<Type> -> bool
Public Function CanExport (types As ICollection(Of Type)) As Boolean

Параметры

types
ICollection<Type>

Объект ICollection<T>, содержащий указанные экспортируемые типы.

Возвращаемое значение

Значение true, если типы можно экспортировать; в противном случае — значение false.

Применяется к

CanExport(Type)

Исходный код:
XsdDataContractExporter.cs
Исходный код:
XsdDataContractExporter.cs
Исходный код:
XsdDataContractExporter.cs

Возвращает значение, указывающее, возможен ли экспорт заданного типа среды CLR.

public:
 bool CanExport(Type ^ type);
public bool CanExport (Type type);
member this.CanExport : Type -> bool
Public Function CanExport (type As Type) As Boolean

Параметры

type
Type

Экспортируемый тип Type.

Возвращаемое значение

Значение true, если тип можно экспортировать; в противном случае — значение false.

Примеры

В следующем примере метод CanExport(Type) вызывается перед вызовом метода Export(Type).

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);
        }
    }
}
Shared Sub ExportXSD() 

    Dim exporter As New XsdDataContractExporter()

    ' Use the ExportOptions to add the Possessions type to the 
    ' collection of KnownTypes. 
    Dim eOptions As New ExportOptions()
    eOptions.KnownTypes.Add(GetType(Possessions))        
    exporter.Options = eOptions

    If exporter.CanExport(GetType(Employee)) Then
        exporter.Export(GetType(Employee))
        Console.WriteLine("number of schemas: {0}", exporter.Schemas.Count)
        Console.WriteLine()
        Dim mySchemas As XmlSchemaSet = exporter.Schemas
        
        Dim XmlNameValue As XmlQualifiedName = _
           exporter.GetRootElementName(GetType(Employee))
        Dim EmployeeNameSpace As String = XmlNameValue.Namespace
        
        Dim schema As XmlSchema
        For Each schema In  mySchemas.Schemas(EmployeeNameSpace)
            schema.Write(Console.Out)
        Next schema
    End If

End Sub

Применяется к