C# Hazelcast IIIdentifiedDataSerializable对象嵌套集合

C# Hazelcast IIIdentifiedDataSerializable对象嵌套集合,c#,.net,hazelcast,hazelcast.net,C#,.net,Hazelcast,Hazelcast.net,我是Hazelcast的新手,正在尝试理解如何正确序列化和反序列化嵌套的对象集合 假设我有一个类似的类,但我正在实现IIdentifiedDataSerializable class Customer : IIdentifiedDataSerializable { int Id { get; set; } List<Address> Addresses { get; set; } CustomerDetails Details { get; set; }

我是Hazelcast的新手,正在尝试理解如何正确序列化和反序列化嵌套的对象集合

假设我有一个类似的类,但我正在实现
IIdentifiedDataSerializable

class Customer : IIdentifiedDataSerializable
{
    int Id { get; set; }
    List<Address> Addresses  { get; set; }
    CustomerDetails Details  { get; set; }
}
// this works fine
output.WriteObject(Addresses);

// successfully get my collection back
Addresses = input.ReadObject<List<Address>>();
public void ReadData(IObjectDataInput input)
{
    Id = input.ReadInt();

    // pseudo code works, but how do I know when to move on?
    loop
    {
        var addr = new Address();
        addr.ReadData(input);
        Addresses.Add(addr);
    }

    var detail = new CustomerDetails();
    detail.ReadData(input);
    Details = detail;
}