This way
private DataSet GetData(string query)
{
string conString = ConfigurationManager.ConnectionStrings["constr"].ConnectionString;
SqlCommand cmd = new SqlCommand(query);
using (SqlConnection con = new SqlConnection(conString))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.Connection = con;
sda.SelectCommand = cmd;
using (DataSet ds = new DataSet())
{
sda.Fill(ds);
return ds;
}
}
}
}
private void BindDropDownList(DataSet ds, DropDownList ddl, string textField, string valueField)
{
ddl.Items.Clear();
ddl.AppendDataBoundItems = true;
ddl.DataSource = ds;
ddl.DataTextField = textField;
ddl.DataTextField = valueField;
ddl.DataBind();
}
To call
DataSet ds = this.GetData("select * from countries");
this.BindDropDownList(ds, DropDownList1, "CountryName", "CountryId");