我正在尝试将CommandArgument作为int传递给我的存储过程,但我得到:
Failed to convert parameter value from a String to a Int32
即使它在我通过它之前被转换了……
C#代码:
cmd.CommandText = "deleteProd"; int delprodID = Convert.ToInt32(e.CommandArgument.ToString()); Response.Write(delprodID); cmd.Parameters.Add(new sqlParameter("@prodID",sqlDbType.Int)).Value = delprodID; cmd.CommandType = CommandType.StoredProcedure; sqlTools.cmdToNonQuery(cmd)
我的Response.Write显示我在delprodID中有正确的ID.
存储过程:
ALTER PROCEDURE dbo.deleteProd @prodID int AS IF @prodID > 0 BEGIN DELETE FROM products WHERE prodID = @prodID END