You should change your stored procedure code in which it can get parameter. Assume your stored procedure is :
//Add @Country and @LastName Parameters to stored procedure.
CREATE PROCEDURE getDataProfile (@Country INT, @LastName NVarchar(50))
As
//Your stored procedure code goes here
Notice: You does not need any SqlDataSource
. Change Source section:
<asp:Button ID="btnSearch" runat="server" Text="search"/>
To:
<asp:Button ID="btnSearch" OnClick="btnSearch_Click" runat="server" Text="search"/>
Also be aware change connection string to your connection string. Your codes must be like this:
protected void btnSearch_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection();
con.ConnectionString = "Your Connection String";
con.Open();
string query = "getDataProfile";
SqlCommand com = new SqlCommand(query, con);
com.CommandType = CommandType.StoredProcedure;
SqlParameter param = com.CreateParameter();
param.ParameterName = "@Country";
param.Value = CountryListBox.SelectedValue;
param.DbType = DbType.Int32;
com.Parameters.Add(param);
param = com.CreateParameter();
param.ParameterName = "@LastName";
param.Value = LastNameTextBox.Text;
param.DbType = DbType.String;
com.Parameters.Add(param);
SqlDataAdapter adapter = new SqlDataAdapter(com);
DataSet dset = new DataSet();
adapter.Fill(dset, "t1");
var result = com.ExecuteReader();
GridView1.EmptyDataText = "No Records Found";
GridView1.DataSource = dset.Tables["t1"];
GridView1.DataBind();
con.Close();
}