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


SerializerDescriptor Класс

Определение

Предоставляет информацию об установленных подключаемых модулях сериализаторов.

public ref class SerializerDescriptor sealed
public sealed class SerializerDescriptor
type SerializerDescriptor = class
Public NotInheritable Class SerializerDescriptor
Наследование
SerializerDescriptor

Примеры

В следующих примерах иллюстрируется использование для возврата сведений SerializerDescriptor об установленных подключаемых сериализаторах.

// Create a SerializerProvider for accessing plug-in serializers.
SerializerProvider serializerProvider = new SerializerProvider();

// Locate the serializer that matches the fileName extension.
SerializerDescriptor selectedPlugIn = null;
foreach ( SerializerDescriptor serializerDescriptor in
                serializerProvider.InstalledSerializers )
{
    if ( serializerDescriptor.IsLoadable &&
         fileName.EndsWith(serializerDescriptor.DefaultFileExtension) )
    {   // The plug-in serializer and fileName extensions match.
        selectedPlugIn = serializerDescriptor;
        break; // foreach
    }
}

// If a match for a plug-in serializer was found,
// use it to output and store the document.
if (selectedPlugIn != null)
{
    Stream package = File.Create(fileName);
    SerializerWriter serializerWriter =
        serializerProvider.CreateSerializerWriter(selectedPlugIn,
                                                  package);
    IDocumentPaginatorSource idoc =
        flowDocument as IDocumentPaginatorSource;
    serializerWriter.Write(idoc.DocumentPaginator, null);
    package.Close();
    return true;
}
// ------------------------ PlugInFileFilter --------------------------
/// <summary>
///   Gets a filter string for installed plug-in serializers.</summary>
/// <remark>
///   PlugInFileFilter is used to set the SaveFileDialog or
///   OpenFileDialog "Filter" property when saving or opening files
///   using plug-in serializers.</remark>
private string PlugInFileFilter
{
    get
    {   // Create a SerializerProvider for accessing plug-in serializers.
        SerializerProvider serializerProvider = new SerializerProvider();
        string filter = "";

        // For each loadable serializer, add its display
        // name and extension to the filter string.
        foreach (SerializerDescriptor serializerDescriptor in
            serializerProvider.InstalledSerializers)
        {
            if (serializerDescriptor.IsLoadable)
            {
                // After the first, separate entries with a "|".
                if (filter.Length > 0)   filter += "|";

                // Add an entry with the plug-in name and extension.
                filter += serializerDescriptor.DisplayName + " (*" +
                    serializerDescriptor.DefaultFileExtension + ")|*" +
                    serializerDescriptor.DefaultFileExtension;
            }
        }

        // Return the filter string of installed plug-in serializers.
        return filter;
    }
}

Комментарии

Подключаемые классы сериализатора являются производными от и реализуют ISerializerFactory интерфейс .

Свойства

AssemblyName

Возвращает имя сборки, содержащей сериализатор.

AssemblyPath

Возвращает путь к файлу сборки, содержащей сериализатор.

AssemblyVersion

Возвращает версию сборки, содержащей сериализатор.

DefaultFileExtension

Возвращает используемое по умолчанию расширение, связанное с выходными файлами сериализатора.

DisplayName

Возвращает открытое отображаемое имя сериализатора.

FactoryInterfaceName

Возвращает имя класса, производного от ISerializerFactory, реализующего данный сериализатор.

IsLoadable

Получает значение, которое указывает, можно ли загрузить сериализатор с текущей установленной версией .NET.

ManufacturerName

Возвращает название компании, разработавшей сериализатор.

ManufacturerWebsite

Возвращает веб-адрес компании, разработавшей сериализатор.

WinFXVersion

Получает версию .NET, требуемую сериализатором.

Методы

CreateFromFactoryInstance(ISerializerFactory)

Создает новый SerializerDescriptor с помощью заданной реализации ISerializerFactory.

Equals(Object)

Сравнивает два объекта SerializerDescriptor, чтобы определить, равны ли они.

GetHashCode()

Возвращает уникальный хэш-код сериализатора.

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

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