title: Why is DataTable copy getting truncated when the original is being truncated?
body: <p>I am trying to preserve a copy of the original DataTable while trying to truncate the original for another purpose.  But when i truncate the original, the copy also gets truncated.</p>
  
  <pre><code>using (SqlCommand cmd = new SqlCommand(sqlSelect, conn))
  {
      //Set Time to minute and a half, should not take longer than that!
      cmd.CommandTimeout = 90;
      DataTable dt = new DataTable();
      DataTable copyDt = new DataTable();
  
      //Check the state of the database connection. If closed, then open it.
      if (conn.State != ConnectionState.Open)
          conn.Open();
  
      dt.Load(cmd.ExecuteReader());
      copyDt = dt.Copy();
  
      if (Session["ServiceRequestSearch"] != null)
      {
          ((DataTable)Session["ServiceRequestSearch"]).Clear();
          ((DataTable)Session["ServiceRequestSearch"]).Dispose();
          Session.Remove("ServiceRequestSearch");
      }
  
      Session["ServiceRequestSearch"] = copyDt;
  
      if (dt.Rows.Count &gt; take)
          for (int i = take; i &lt; dt.Rows.Count; i++)
              dt.Rows[i].Delete();
  
      dt.AcceptChanges();
      TextBox.Text = dt.Rows.Count + "";
      TextBox2.Text = ((DataTable)Session["ServiceRequestSearch"]).Rows.Count + "";
  
  
  
      //Close SQL data connection if it is still open.
      if (conn.State != ConnectionState.Closed)
          conn.Close();
  }
  </code></pre>
  
  <p>They both show the same number for the row count, even though the copy should be a lot higher.</p>