我正在尝试将CommandArgument
as传递int
给我的存储过程,但我得到:
无法将参数值从 String 转换为 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
显示我在 中获得了正确的 ID delprodID
。
存储过程:
ALTER PROCEDURE dbo.deleteProd @prodID int
AS
IF @prodID > 0
BEGIN
DELETE FROM products WHERE prodID = @prodID
END