title: MemoryStream seems be closed after NPOI workbook.write?
body: <p>I am using <a href="http://npoi.codeplex.com/" rel="noreferrer">NPOI</a> to convert DataTable to Excel in a ASP.NET Web API project.</p>
  
  <p>But the I got nothing from the response. Here's my code:</p>
  
  <pre><code>public HttpResponseMessage GetExcelFromDataTable(DataTable dt)
  {
      IWorkbook workbook = new XSSFWorkbook(); // create *.xlsx file, use HSSFWorkbook() for creating *.xls file.
      ISheet sheet1 = workbook.CreateSheet();
      IRow row1 = sheet1.CreateRow(0);
      for (int i = 0; dt.Columns.Count &gt; i; i++)
      {
          row1.CreateCell(i).SetCellValue(dt.Columns[i].ColumnName);
      }
  
      for (int i = 0; dt.Rows.Count &gt; i; i++)
      {
          IRow row = sheet1.CreateRow(i + 1);
          for (int j = 0; dt.Columns.Count &gt; j; j++)
          {
              row.CreateCell(j).SetCellValue(dt.Rows[i][j].ToString());
          }
      }
  
      MemoryStream ms = new MemoryStream();
      workbook.Write(ms);
      HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);
      result.Content = new StreamContent(ms);
      result.Content.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
      result.Content.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment");
      result.Content.Headers.ContentDisposition.FileName = string.Format("{0}.xlsx", dt.TableName);
      return result;
  }
  </code></pre>
  
  <p>I set a break point to inspect the <code>ms.Length</code> after <code>workbook.Write(ms)</code>, but it return a exception : <code>System.ObjectDisposedException</code>.</p>
  
  <p>Where did I go wrong?</p>