Compartir a través de


Serialize Método

Cuando lo invalida una clase derivada, serializa el filtro en una matriz de bytes.

Espacio de nombres:  Microsoft.Synchronization
Ensamblado:  Microsoft.Synchronization (en Microsoft.Synchronization.dll)

Sintaxis

'Declaración
Function Serialize As Byte()
'Uso
Dim instance As ISyncFilter
Dim returnValue As Byte()

returnValue = instance.Serialize()
byte[] Serialize()
array<unsigned char>^ Serialize()
abstract Serialize : unit -> byte[] 
function Serialize() : byte[]

Valor devuelto

Tipo: array<System. . :: . .Byte> [] () [] []
Datos del filtro serializados en una matriz de bytes.

Notas

Si no es necesario serializar el filtro, este método puede producir la excepción NotImplementedException.

Ejemplos

En el ejemplo siguiente se usa un objeto BinaryWriter para serializar el filtro personalizado en una matriz de bytes.

Public Function Serialize() As Byte() Implements ISyncFilter.Serialize
    Dim memStream As New MemoryStream()
    Dim biWriter As New BinaryWriter(memStream, Encoding.Unicode)

    SerializeToBinaryWriter(biWriter)

    Return memStream.GetBuffer()
End Function

Private Sub SerializeToBinaryWriter(ByVal biWriter As BinaryWriter)
    Dim hasFilterForgottenKnowledge As Boolean = (_filterForgottenKnowledge IsNot Nothing)

    biWriter.Write(hasFilterForgottenKnowledge)

    biWriter.Write(_filter)

    If _filterForgottenKnowledge IsNot Nothing Then
        Dim serializedForgottenKnowledge As Byte() = _filterForgottenKnowledge.Serialize()
        biWriter.Write(serializedForgottenKnowledge.Length)
        biWriter.Write(serializedForgottenKnowledge)
    End If
End Sub
public byte[] Serialize()
{
    MemoryStream memStream = new MemoryStream();
    BinaryWriter biWriter = new BinaryWriter(memStream, Encoding.Unicode);

    SerializeToBinaryWriter(biWriter);

    return memStream.GetBuffer();
}

private void SerializeToBinaryWriter(BinaryWriter biWriter)
{
    bool hasFilterForgottenKnowledge = (null != _filterForgottenKnowledge);

    biWriter.Write(hasFilterForgottenKnowledge);

    biWriter.Write(_filter);

    if (null != _filterForgottenKnowledge)
    {
        byte[] serializedForgottenKnowledge = _filterForgottenKnowledge.Serialize();
        biWriter.Write(serializedForgottenKnowledge.Length);
        biWriter.Write(serializedForgottenKnowledge);
    }
}

Vea también

Referencia

ISyncFilter Interfaz

ISyncFilter Miembros

Microsoft.Synchronization Espacio de nombres