Partager via


IStateSerializer<T> Interface

Définition

Représente un sérialiseur personnalisé pour le type T.

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

Paramètres de type

T

Tapez à sérialiser et désérialiser.

Exemples

Dans cet exemple, l’implémentation des surcharges de lecture et d’écriture appelle simplement les surcharges correspondantes. Les paramètres currentValue et baseValue ne sont pas définis par la plateforme et doivent être ignorés.

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

Remarques

Utilisez TryAddStateSerializer<T>(IStateSerializer<T>) pour inscrire un sérialiseur personnalisé.

Méthodes

Read(BinaryReader)

Désérialise du donné BinaryReader à T.

Read(T, BinaryReader)

Désérialise du donné BinaryReader à T.

Write(T, BinaryWriter)

Sérialise une valeur et l’écrit dans le donné BinaryWriter.

Write(T, T, BinaryWriter)

Sérialise un objet et l’écrit dans le donné BinaryWriter.

S’applique à