Condividi tramite


SerializerProvider.CreateSerializerWriter Metodo

Definizione

Inizializza un oggetto derivato dalla classe SerializerWriter astratta per l'oggetto Stream specificato che utilizzerà il descrittore specificato.

public:
 System::Windows::Documents::Serialization::SerializerWriter ^ CreateSerializerWriter(System::Windows::Documents::Serialization::SerializerDescriptor ^ serializerDescriptor, System::IO::Stream ^ stream);
public System.Windows.Documents.Serialization.SerializerWriter CreateSerializerWriter (System.Windows.Documents.Serialization.SerializerDescriptor serializerDescriptor, System.IO.Stream stream);
member this.CreateSerializerWriter : System.Windows.Documents.Serialization.SerializerDescriptor * System.IO.Stream -> System.Windows.Documents.Serialization.SerializerWriter
Public Function CreateSerializerWriter (serializerDescriptor As SerializerDescriptor, stream As Stream) As SerializerWriter

Parametri

serializerDescriptor
SerializerDescriptor

Oggetto SerializerDescriptor che contiene informazioni sulla serializzazione per la classe SerializerWriter.

stream
Stream

Oggetto Stream nel quale l'oggetto restituito scrive.

Restituisce

SerializerWriter

Oggetto di una classe derivata da SerializerWriter.

Eccezioni

Uno dei parametri è null.

L'oggetto serializerDescriptor specifica la versione errata.

-oppure- Non è registrato.

-oppure- Impossibile trovare l'assembly specificato.

-oppure- Impossibile caricare l'assembly.

Esempio

Nell'esempio seguente viene illustrato l'uso CreateSerializerWriter di per restituire un writer di serializzazione plug-in per il salvataggio di un file.

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

Commenti

Solo le applicazioni completamente attendibili possono chiamare CreateSerializerWriter.

Si applica a