Well try something similar:
public static int ExecuteMyQuery(int p1, int p2, int p3, int p4)
{
string connString = @"Data Source=SYSTEM2\SQLEXPRESS;Initial Catalog=library;Integrated Security=True";
using (SqlConnection cn = new SqlConnection(connString))
{
using (SqlCommand cmd = new SqlCommand("sp_MyStored", cn))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@p1", SqlDbType.Int).Value = p1;
cmd.Parameters.Add("@p2", SqlDbType.Int).Value = p2;
cmd.Parameters.Add("@p3", SqlDbType.Int).Value = p3;
cmd.Parameters.Add("@p4", SqlDbType.Int).Value = p4;
cmd.Parameters.Add("@retVal", SqlDbType.Int).Direction = ParameterDirection.Output;
cn.Open();
cmd.ExecuteNonQuery();
return (int)cmd.Parameters["@retVal"].Value;
}
}
}
This example works fine. Adapt your code and if any let us know.
Cheers