public int GetMemorySize() { int res = BinarySerializeUtils.GetStringMemorySize(Name); res += 1; //IsArray //2 байта - количество значений res += 2; //значения: for (int i = 0; i < _values.Count; i++) { IKeyValue val = _values[i]; res += val.GetMemorySize(); } //2 байта - количество подключей res += 2; //значения: for (int i = 0; i < _keys.Count; i++) { res += _keys[i].GetMemorySize(); } return(res); }