' @ search'附近的语法不正确

时间:2015-12-06 10:32:50

标签: c#

我在visual studio 13中做了这个代码,一切都很棒,直到我在aspspider上传我的网站时出现了这个错误,我搜索了这个错误,我尝试了一切,但没有任何改变,请帮帮我

protected void Button1_Click2(object sender, EventArgs e)
{       
    string str = "select * from [exp] where  Expression=@search  Order by Expression";
    SqlCommand com = new SqlCommand(str, conn)

    com.Parameters.Add(" @search", SqlDbType.VarChar).Value = TextBox1.Text;
    conn.Open();

    SqlDataAdapter da = new SqlDataAdapter(com);
    da.SelectCommand = com;
    DataSet ds = new DataSet();
    da.Fill(ds, "Expression");
    GridView1.DataSource = ds;
    GridView1.DataBind();
    conn.Close();
}

1 个答案:

答案 0 :(得分:1)

我认为只是需要在参数名称之前删除空格。

com.Parameters.Add(" @search"

部分应该是

com.Parameters.Add("@search"

也可以使用using statement自动处理连接,命令和适配器,而不是手动调用Close方法。

using(var conn = new SqlConneciton(conStr))
using(var com = conn.CreateCommand())
{
   // Define your CommandText
   // Add your parameter values with Add method.

   using(var da = new SqlDataAdapter(com))
   {
       // Do your stuff
   }
}