我有一个网站。它有一个Web服务。我使用了很多存储过程,它们都工作得很好,但这个不起作用。当我尝试在Access上运行它时,它运行正常,但是当我尝试通过Web服务使用它时,我没有输出任何输入 - 即使输入在直接数据库上返回输出。
我的存储过程:
SELECT * FROM ShowsList
WHERE (((ShowsList.ShowName) Like '*'+['@str1']+'*')) OR (((ShowsList.ShowDis) Like '*'+['@str2']+'*'));
我的网络服务功能:
[WebMethod]
public DataSet Search(string q)
{
DataSet ds = new DataSet();
OleDbDataAdapter dr;
OleDbCommand myCmd = new OleDbCommand("GetBySearch", this.myConnection);
myCmd.CommandType = CommandType.StoredProcedure;
OleDbParameter Param1;
Param1 = myCmd.Parameters.Add("@str1", OleDbType.BSTR);
Param1.Direction = ParameterDirection.Input;
Param1.Value = q;
OleDbParameter Param2;
Param2 = myCmd.Parameters.Add("@str2", OleDbType.BSTR);
Param2.Direction = ParameterDirection.Input;
Param2.Value = q;
try
{
this.myConnection.Open();
dr = new OleDbDataAdapter(myCmd);
dr.Fill(ds);
}
catch (OleDbException ex)
{
throw ex;
}
finally
{
this.myConnection.Close();
}
return ds;
}
我必须使用网络服务,这是一个需求。我检查了db和函数中sp的名称是否相同,我尝试了所有类型的许多输入。总是相同的结果 - 处理访问,Web服务没有输出。