// De tête, pour un appel de procédure dans sql-Server de ce genre :
// declare @returnValue int
// exec @returnValue = maProc(@p1)
// Une connection
SqlConnection connect = new SqlConnection("connectionString");
connect.Open();
// Une commande
SqlCommand cmd = new SqlCommand(connect);
cmd.CommandType = CommandType.StoredProcedure;
cmd.CommandText = "maProc";
// Un parametre de retour
SqlParameter retParam = new SqlParameter("@returnValue", SqlDbType.Int);
retParam.Direction = Direction.ReturnValue;
cmd.Parameters.Add(retParam);
// Un parametre normal
cmd.Parameters.Add("@p1", SqlDbType.VarChar).value = "test";
// Execute
SqlDataReader reader = cmd.ExecuteReader();
// ferme la connection
connect.Close();
// Quel retour ?
int ret = Int32.Parse(cmd.Parameters["@returnValue"].ToString());
// utilise le reader
while(reader.Read())
{
string champ1 = "";
if( ! reader.IsDbNull(0) )
champ1 = reader["CHAMP1"].ToString();
// ou reader.GetString(0);
// ect...
}