次の方法で共有


IStateSerializer<T> インターフェイス

定義

型のカスタム シリアライザーを表します T

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

型パラメーター

T

シリアル化と逆シリアル化を行う型。

この例では、読み取りおよび書き込みオーバーロードの実装では、対応するオーバーロードを呼び出すだけです。 currentValue パラメーターと baseValue パラメーターはプラットフォームによって設定されないため、無視する必要があります。

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

注釈

カスタム シリアライザーを登録するには、 を使用 TryAddStateSerializer<T>(IStateSerializer<T>) します。

メソッド

Read(BinaryReader)

指定 BinaryReader された から に T逆シリアル化します。

Read(T, BinaryReader)

指定 BinaryReader された から に T逆シリアル化します。

Write(T, BinaryWriter)

値をシリアル化し、指定 BinaryWriterされた に書き込みます。

Write(T, T, BinaryWriter)

オブジェクトをシリアル化し、指定 BinaryWriterされた に書き込みます。

適用対象