protected override void ReadContent(LiteDB.ByteReader reader) { this.CollectionName = reader.ReadString(); this.FreeDataPageID = reader.ReadUInt32(); var uintCount = reader.ReadUInt32(); // read as uint (4 bytes) foreach (var index in this.Indexes) { index.Field = reader.ReadString(); index.HeadNode = reader.ReadPageAddress(); index.TailNode = reader.ReadPageAddress(); index.FreeIndexPageID = reader.ReadUInt32(); index.Options.Unique = reader.ReadBoolean(); index.Options.IgnoreCase = reader.ReadBoolean(); index.Options.TrimWhitespace = reader.ReadBoolean(); index.Options.EmptyStringToNull = reader.ReadBoolean(); index.Options.RemoveAccents = reader.ReadBoolean(); } // be compatible with v2_beta var longCount = reader.ReadInt64(); this.DocumentCount = Math.Max(uintCount, longCount); }