我試圖創建一個web服務來幫助執行存儲過程。和我在我的代碼中調用的web方法來執行存儲過程。這是我的Web方法 -在webmethod中傳遞SqlParameter asp.net
[WebMethod(Description = des_ExecuteParamerizedSelectCommand)]
public DataTable ExecuteParamerizedSelectCommand(string CommandName, CommandType cmdType, SqlParameter[] param)
{
DataTable table = new DataTable();
using (SqlConnection con = new SqlConnection(ConnectionString()))
{
using (SqlCommand cmd = con.CreateCommand())
{
cmd.CommandType = cmdType;
cmd.CommandText = CommandName;
cmd.Parameters.AddRange(param);
try
{
if (con.State != ConnectionState.Open)
{
con.Open();
}
using (SqlDataAdapter da = new SqlDataAdapter(cmd))
{
da.Fill(table);
}
}
catch
{
throw;
}
}
}
return table;
}
現在,這是我在我的數據訪問層的代碼 - 當我試圖調用這個Web方法,它的投擲編譯時錯誤。
Error 2 Argument 2: cannot convert from 'System.Data.CommandType' to 'DAL.sqlDBHelper.CommandType'
Error 3 Argument 3: cannot convert from 'System.Data.SqlClient.SqlParameter[]' to 'DAL.sqlDBHelper.SqlParameter[]'
我的代碼來調用的WebMethod -
sqlDBHelper.ODCdbHelper mysqlDBHelper = new sqlDBHelper.ODCdbHelper();
public Login GetUserRoles(string _Idsid)
{
Login login = null;
SqlParameter[] parameters = new SqlParameter[]
{
new SqlParameter("@UserName", _Idsid)
};
//Lets get the list of all employees in a datataable
using (DataTable table = mysqlDBHelper.ExecuteParamerizedSelectCommand("GetUserRole", CommandType.StoredProcedure, parameters))
能否請你告訴我這樣的人,我在哪裏錯了?
在此先感謝 Gulrej
相同的代碼工作,當我沒有使用Web服務。 – Gulrej 2013-05-03 04:44:58
現在我有疑問了,我們可以通過一個web方法傳遞sqlparameter嗎? – Gulrej 2013-05-03 04:46:54
sqlDBHelper.ODCdbHelper mysqlDBHelper = new sqlDBHelper.ODCdbHelper(); 它不需要SQL參數... bcz mysqlDBHelper ias類型的ODCdbHelper – 2013-05-03 04:50:36