C# 基于webservice中的用户输入查询sql时无法显示结果

C# 基于webservice中的用户输入查询sql时无法显示结果,c#,asp.net,sql,C#,Asp.net,Sql,从标题中您可能知道,当我从sql数据库查询时,无法获得结果。 这是我的密码: public string Summon(int Input1) { SqlDataAdapter dbadapter = null; DataSet returnDS = new DataSet(); using (SqlConnection dbconn = new SqlConnection( "DatabaseConnection")) { Sq

从标题中您可能知道,当我从sql数据库查询时,无法获得结果。 这是我的密码:

public string Summon(int Input1)
{
    SqlDataAdapter dbadapter = null;
    DataSet returnDS = new DataSet();

    using (SqlConnection dbconn = new SqlConnection(
        "DatabaseConnection"))
    {
        SqlCommand cmd = new SqlCommand();
        //string sqlQuery = "select * from SUMMON";

        string sqlQuery = "select * from SUMMON where ic_no=@Input1";

        cmd.CommandText = sqlQuery;
        cmd.Connection = dbconn;
        dbadapter = new SqlDataAdapter(cmd);

        dbadapter.Fill(returnDS);
    }

    return returnDS.GetXml();
}
然后我得到一个例外:-

System.Data.SqlClient.SqlException:必须声明标量变量“@Input1”


您需要将名为@Input1的参数添加到cmd:

cmd.Parameters.Add(new SqlParameter("@Input1", input1));

解释如何将参数与数据适配器一起使用。

cmd.parameters.Add(“@Input1”,Input1);string sqlQuery=“select*from call where ic_no='Input1'”;我这样做了,但仍然无法获取xml中的输出。它引发了此异常::SqlParameterCollection只接受非空的SqlParameter类型对象,而不是Int32对象。我已更改答案以构造新的SqlParameter。SqlParameterCollection的文档位于,您不应编辑问题以包含答案。只需单击答案旁边的大复选标记按钮,就可以说它是正确的。对不起,我没有编辑我的问题,我没有把答案放在上面?。你为什么这样说?。无论如何,谢谢你提供的信息。:)没关系,你和我们所有人一样,在这里学习。您在顶部编辑了问题,在下面添加了答案,并用许多
@
字符分隔。我返回到之前的版本并格式化了一点。