internal Page(byte[] bytes, int offset) { JetHeader h = new JetHeader(bytes); PageNumber = GetPageNumber((uint)offset, h.PageSize); Checksum = BitConverter.ToUInt64(bytes, 0x00 + offset); LastModificationTime = new JetDbTime(bytes, offset + 0x08); PreviousPageNumber = BitConverter.ToUInt32(bytes, 0x10 + offset); NextPageNumber = BitConverter.ToUInt32(bytes, 0x14 + offset); FatherDataPage = BitConverter.ToUInt32(bytes, 0x18 + offset); AvailableDataSize = BitConverter.ToUInt16(bytes, 0x1C + offset); AvailableUncommittedDataSize = BitConverter.ToUInt16(bytes, 0x1E + offset); FirstAvailableDataOffset = BitConverter.ToUInt16(bytes, 0x20 + offset); FirstAvailablePageTag = BitConverter.ToUInt16(bytes, 0x22 + offset); PageFlags = ((Page.JET_PAGEFLAGS)BitConverter.ToUInt32(bytes, 0x24 + offset)); Tags = DataTag.GetInstances(bytes, offset); }