我原来手工绑定的GridView的时候,要做搜索功能只要加几个文本框和1个按钮,按钮代码重新绑定一下GridView就可以了,代码如下
//搜索
protected void Button2_Click(object sender, EventArgs e)
{
OracleConnection conn = new OracleConnection("Data Source=caora;User ID=xx;Password=xx;");
conn.Open();
OracleDataAdapter oradar = new OracleDataAdapter("SELECT XMBH , XMMC , JSDWMC , JSDD , HPPZSJ , HPPW FROM XM where XMBH='" + TextBox2.Text + "' or XMMC='" + TextBox3.Text + "' or JSDWMC='" + TextBox4.Text + "' or JSDD='" + TextBox5.Text + "' order by HPPZSJ ", conn);
DataSet da = new DataSet();
oradar.Fill(da, "XM");
GridView1.DataSource = da.Tables["XM"].DefaultView;
GridView1.DataBind();
conn.Close();
}
问题是,我如果用SqlDataSource控件绑定GridView的话,上面的代码会报错“GridView1”上同时定义了 DataSource 和 DataSourceID。请移除一个定义。
怎么办呢?
//搜索
protected void Button2_Click(object sender, EventArgs e)
{
OracleConnection conn = new OracleConnection("Data Source=caora;User ID=xx;Password=xx;");
conn.Open();
OracleDataAdapter oradar = new OracleDataAdapter("SELECT XMBH , XMMC , JSDWMC , JSDD , HPPZSJ , HPPW FROM XM where XMBH='" + TextBox2.Text + "' or XMMC='" + TextBox3.Text + "' or JSDWMC='" + TextBox4.Text + "' or JSDD='" + TextBox5.Text + "' order by HPPZSJ ", conn);
DataSet da = new DataSet();
oradar.Fill(da, "XM");
GridView1.DataSource = da.Tables["XM"].DefaultView;
GridView1.DataBind();
conn.Close();
}
问题是,我如果用SqlDataSource控件绑定GridView的话,上面的代码会报错“GridView1”上同时定义了 DataSource 和 DataSourceID。请移除一个定义。
怎么办呢?
XM.SelectCommand = "SELECT XMBH , XMMC , JSDWMC , JSDD , HPPZSJ , HPPW FROM XM where XMBH='" + TextBox2.Text + "' or XMMC='" + TextBox3.Text + "' or JSDWMC='" + TextBox4.Text + "' or JSDD='" + TextBox5.Text + "' order by HPPZSJ ";
GridView1.DataBind();
就2句,哇哈哈
只要将SQL语言赋值给SqlDataSource.SelectCommand 就可以了
如:
SqlDataSource.SelectCommand = "SELECT XMBH , XMMC , JSDWMC , JSDD , HPPZSJ , HPPW FROM XM where XMBH='" + TextBox2.Text + "' or XMMC='" + TextBox3.Text + "' or JSDWMC='" + TextBox4.Text + "' or JSDD='" + TextBox5.Text + "' order by HPPZSJ ";当然可以设置SqlDataSource
<asp:SqlDataSource ID="SqlDataSource_Search" runat="server" ConnectionString="<%$ ConnectionStrings:SystemUserConnectionString %>" SelectCommand=""></asp:SqlDataSource>