/// <summary> /// Create new database - just create empty header page /// </summary> public void CreateNew() { // open file as create mode using (var stream = _fileHandler.CreateFile(_filename, false)) { _log.Write(Logger.DISK, "initialize new datafile"); // if has a initial size, reserve this space if (_initialSize > 0) { _log.Write(Logger.DISK, "initial datafile size {0}", _initialSize); stream.SetLength(_initialSize); } // create a new header page in bytes var bytes = this.CreateHeaderPage().WritePage(); // write bytes on page stream.Write(bytes, 0, BasePage.PAGE_SIZE); } }