public override void Write(byte[] buffer, int offset, int count)
{
if (_fileStream == null)
{
if (_memoryStream.Length + count > _memoryBufferMaxSize)
{
// Swap from memory to file
_fileStream = File.Open(_backingFilePath, FileMode.CreateNew, FileAccess.ReadWrite, FileShare.ReadWrite);
_memoryStream.Seek(0, SeekOrigin.Begin);
_memoryStream.WriteTo(_fileStream);
_memoryStream.Dispose();
}
}
CurrentStream.Write(buffer, offset, count);
}