[求教]在选定的数据源上未找到名为“bookName”的字段或属性
我想做一个多条件的模糊查询,代码如下
protected void Button1_Click(object sender, EventArgs e)
{
string strsql = "";
strsql = "SELECT bookId FROM Book WHERE 1=1";
if(this.TextBox1.Text !="")
{
strsql += "AND bookName like'%" + this.TextBox1.Text.ToString() + "%'";
}
if(this.TextBox2.Text !="")
{
strsql += "AND author like'%" + this.TextBox2.Text.ToString() + "%'";
}
if(this.TextBox3.Text !="")
{
strsql += "AND ISBN like'%" + this.TextBox3.Text.ToString() + "%'";
}
SqlDataSource1.SelectCommand = strsql;
GridView1.DataBind();
}
然后就出现了在选定的数据源上未找到名为“bookName”的字段或属性
但是,我的Book表中的确是有bookName这一列,而且最开始我使用的是SelectCommand="SELECT * FROM [Book]",应该说不会存在漏选的情况,但是还是出现了这样的错误,请问这是什么原因造成的呢,而且怎样修改,请各位指点一下 谢谢了
------解决方案-------------------- strsql += "AND bookName like'%" + this.TextBox1.Text.ToString() + "%'";
这里的后边都省了空格
strsql += " AND bookName like'%" + this.TextBox1.Text.ToString() + "%' ";
这样就不会出问题了
------解决方案--------------------你查询的结果 放哪了? 绑定到 GridView 上了? 是不是GridView上绑定了 bookName字段。
------解决方案-------------------- strsql = "SELECT
bookId FROM Book WHERE 1=1";
你只查询bookId,怎么可能有BookName??
把bookName添加进去
strsql = "SELECT bookId,bookName,........... FROM Book WHERE 1=1";