Compartir a través de


Deserialize Método

Cuando se invalida en una clase derivada, crea un objeto ISyncFilter y lo inicializa utilizando los datos serializados.

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

Sintaxis

'Declaración
Function Deserialize ( _
    data As Byte() _
) As ISyncFilter
'Uso
Dim instance As ISyncFilterDeserializer
Dim data As Byte()
Dim returnValue As ISyncFilter

returnValue = instance.Deserialize(data)
ISyncFilter Deserialize(
    byte[] data
)
ISyncFilter^ Deserialize(
    array<unsigned char>^ data
)
abstract Deserialize : 
        data:byte[] -> ISyncFilter 
function Deserialize(
    data : byte[]
) : ISyncFilter

Parámetros

Valor devuelto

Tipo: Microsoft.Synchronization. . :: . .ISyncFilter
El objeto ISyncFilter que se acaba de crear y que se inicializa mediante los datos serializados contenidos en data.

Notas

Este método deserializa los datos que genera el método Serialize para el filtro personalizado asociado.

Ejemplos

En el ejemplo siguiente se usa un objeto BinaryReader para deserializar el filtro personalizado de una matriz de bytes.

Public Function Deserialize(ByVal data As Byte()) As ISyncFilter Implements ISyncFilterDeserializer.Deserialize
    Dim memStream As New MemoryStream(data, 0, data.Length, False, True)
    Dim biReader As New BinaryReader(memStream, Encoding.Unicode)

    DeserializeFromBinaryReader(biReader, memStream)

    Return Me
End Function

Private Sub DeserializeFromBinaryReader(ByVal biReader As BinaryReader, ByVal memStream As MemoryStream)
    Dim hasFilterForgottenKnowledge As Boolean = biReader.ReadBoolean()

    _filter = biReader.ReadString()

    If hasFilterForgottenKnowledge Then
        Dim cbForgottenKnowledge As Integer = biReader.ReadInt32()
        Dim rawBuffer As Byte() = biReader.ReadBytes(cbForgottenKnowledge)
        _filterForgottenKnowledge = ForgottenKnowledge.Deserialize(ContactStore.ContactIdFormatGroup, rawBuffer)
    End If
End Sub
public ISyncFilter Deserialize(byte[] data)
{
    MemoryStream memStream = new MemoryStream(data, 0, data.Length, false, true);
    BinaryReader biReader = new BinaryReader(memStream, Encoding.Unicode);

    DeserializeFromBinaryReader(biReader, memStream);

    return this;
}

private void DeserializeFromBinaryReader(BinaryReader biReader, MemoryStream memStream)
{
    bool hasFilterForgottenKnowledge = biReader.ReadBoolean();

    _filter = biReader.ReadString();

    if (hasFilterForgottenKnowledge)
    {
        int cbForgottenKnowledge = biReader.ReadInt32();
        byte[] rawBuffer = biReader.ReadBytes(cbForgottenKnowledge);
        _filterForgottenKnowledge = ForgottenKnowledge.Deserialize(ContactStore.ContactIdFormatGroup,
            rawBuffer);
    }
}

Vea también

Referencia

ISyncFilterDeserializer Interfaz

ISyncFilterDeserializer Miembros

Microsoft.Synchronization Espacio de nombres