I want to fill a DataGridView control using DataAdapter. But I don't know how to do it since I'm using a stored procedure with parameter. Can someone cite an example please?
Executing a Stored ProcedureUsing a stored procedure with ADO.NET is easy. You simply follow four steps: Create a Command , and set its CommandType property to StoredProcedure . Set the CommandText to the name of the stored procedure.
The Fill method of the DataAdapter is used to populate a DataSet with the results of the SelectCommand of the DataAdapter . Fill takes as its arguments a DataSet to be populated, and a DataTable object, or the name of the DataTable to be filled with the rows returned from the SelectCommand .
I got it!...hehe
protected DataTable RetrieveEmployeeSubInfo(string employeeNo) { SqlCommand cmd = new SqlCommand(); SqlDataAdapter da = new SqlDataAdapter(); DataTable dt = new DataTable(); try { cmd = new SqlCommand("RETRIEVE_EMPLOYEE", pl.ConnOpen()); cmd.Parameters.Add(new SqlParameter("@EMPLOYEENO", employeeNo)); cmd.CommandType = CommandType.StoredProcedure; da.SelectCommand = cmd; da.Fill(dt); dataGridView1.DataSource = dt; } catch (Exception x) { MessageBox.Show(x.GetBaseException().ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { cmd.Dispose(); pl.MySQLConn.Close(); } return dt; }
SqlConnection con = new SqlConnection(@"Some Connection String"); SqlDataAdapter da = new SqlDataAdapter("ParaEmp_Select",con); da.SelectCommand.CommandType = CommandType.StoredProcedure; da.SelectCommand.Parameters.Add("@Contactid", SqlDbType.Int).Value = 123; DataTable dt = new DataTable(); da.Fill(dt); dataGridView1.DataSource = dt;
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With