expects parameter '@ID', which was not supplied?
Solution 1
You seem to be calling a stored procedure - yet you've never defined your SqlCommand
to be a stored procedure:
using (SqlCommand cmd = new SqlCommand("dbo.usp_ClientHistoryItem", conn))
{
cmd.CommandType = CommandType.StoredProcedure; // add this line to tell ADO.NET it's a stored procedure!!
If you forget that line, then ADO.NET will try to interpret your stuff as an ad-hoc SQL statement....
Solution 2
this one solve my problem may be it may helpful
cmd.CommandType = CommandType.StoredProcedure;
Solution 3
Your ID parameter in the stored procedure must be set as OUTPUT parameter. You are just setting it in code not in stored procedure.
Solution 4
Hy guys.
You have to set the property CommandType for the Command to StoredProcedure if that's the case. Otherwise it woun't detect the parameters.
Azhar
.net / iOS / Android / Windows Mobile/ React-native Optimization Optimization Optimization
Updated on August 01, 2022Comments
-
Azhar almost 2 years
I am sending ID as outparameter but its giving error
System.Data.SqlClient.SqlException: Procedure or function 'usp_ClientHistoryItem' expects parameter '@ID', which was not supplied.
Code
using (SqlCommand cmd = new SqlCommand("dbo.usp_ClientHistoryItem", conn)) { SqlParameter parameterID = new SqlParameter("@ID", oReservation.Id); parameterID.Direction = ParameterDirection.Output; cmd.Parameters.Add(parameterID); cmd.Parameters.Add(new SqlParameter("@PhoneNo", oReservation.ClientPhone)); cmd.Parameters.Add(new SqlParameter("@UserId", oReservation.UserID)); cmd.Parameters.Add(new SqlParameter("@Description", oReservation.Description)); cmd.Parameters.Add(new SqlParameter("@TestId", oReservation.TestId)); cmd.Parameters.Add(new SqlParameter("@StartDate", oReservation.StartDate)); cmd.ExecuteNonQuery(); returnValue = Convert.ToInt32(cmd.Parameters["@ID"].Value); return returnValue; }
-
Azhar about 12 yearsI did it in StoredProcedure :)