title: Should i go for SqlDataReader or SqlDataAdapter class for returning a datatable
body: <p>I have written the below code. I want to know if i can improve it any further.</p>
  
  <pre><code>public static DataTable GetDepartments()
  {
      DataTable dt = new DataTable();
  
      using (SqlConnection connection = new SqlConnection(connectionString))
      {
          using (SqlCommand command = new SqlCommand())
          {
              command.CommandText = "proc_GetDepartments";
              command.CommandType = CommandType.StoredProcedure;
  
              connection.Open();
              using (SqlDataAdapter da = new SqlDataAdapter(command))
              {
                  command.Connection = connection;
                  da.Fill(dt);
              }
          }
      }
      return dt;
  
  }
  </code></pre>
  
  <p>Here i have used SqlDataAdapter. What would be the SqlDataReader way to write it. Also which one is better. Any help/guidance is appreciated.</p>