Partilhar via


IStateSerializer<T> Interface

Definição

Representa um serializador personalizado para o tipo T.

public interface IStateSerializer<T>
type IStateSerializer<'T> = interface
Public Interface IStateSerializer(Of T)

Parâmetros de tipo

T

Digite para serializar e desserializar.

Exemplos

Neste exemplo, a implementação das sobrecargas de Leitura e Gravação simplesmente chama suas sobrecargas equivalentes. Os parâmetros currentValue e baseValue não são definidos pela plataforma e devem ser ignorados.

class Order
{
    public byte Warehouse { get; set; }
    public short District { get; set; }
    public int Customer { get; set; }
    public long OrderNumber { get; set; }
}

class OrderSerializer : IStateSerializer<Order>
{
    void Write(Order value, BinaryWriter writer)
    {
        writer.Write(value.Warehouse);
        writer.Write(value.District);
        writer.Write(value.Customer);
        writer.Write(value.OrderNumber);
    }

    Order Read(BinaryReader reader)
    {
        Order value = new Order();

        value.Warehouse = reader.ReadByte();
        value.District = reader.ReadInt16();
        value.Customer = reader.ReadInt32();
        value.OrderNumber = reader.ReadInt64();

        return value;
    }

    void Write(Order currentValue, Order newValue, BinaryWriter writer)
    {
        this.Write(newValue, writer);
    }

    Order Read(Order baseValue, BinaryReader reader)
    {
        return this.Read(reader);
    }
}

Comentários

Use TryAddStateSerializer<T>(IStateSerializer<T>) para registrar um serializador personalizado.

Métodos

Read(BinaryReader)

Desserializa do determinado BinaryReader para T.

Read(T, BinaryReader)

Desserializa do determinado BinaryReader para T.

Write(T, BinaryWriter)

Serializa um valor e o grava no determinado BinaryWriter.

Write(T, T, BinaryWriter)

Serializa um objeto e o grava no determinado BinaryWriter.

Aplica-se a