J'ai une procédure stockée simple SQL Server:Initialiser paramètre de sortie de procédure stockée
ALTER PROCEDURE GetRowCount
(
@count int=0 OUTPUT
)
AS
Select * from Emp where age>30;
SET @[email protected][email protected]@ROWCOUNT;
RETURN
Je suis en train d'initialiser et accéder au paramètre de sortie dans le code C#:
SqlConnection con = new SqlConnection();
con.ConnectionString = "Data Source=localhost\\SQLEXPRESS;Initial Catalog=answers;Integrated Security=True";
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;
cmd.CommandText = "GetRowCount";
cmd.Parameters.Add(new SqlParameter("@count", SqlDbType.Int));
cmd.Parameters["@count"].Direction = ParameterDirection.Output;
con.Open();
cmd.Parameters["@count"].Value=5;
cmd.ExecuteNonQuery();
int ans = (int)(cmd.Parameters["@count"].Value);
Console.WriteLine(ans);
Mais la course le code, un InvalidCastException
est lancé à la deuxième dernière ligne du code (j'ai débogué et vérifié que rien n'est retourné dans l'attribut de valeur).
Comment initialiser correctement le paramètre de sortie dans le code? Merci d'avance!
double possible de [Accès paramètre de sortie de procédure stockée SQL Server en C#] (http://stackoverflow.com/questions/12174399/accessing-sql-server-stored-procedure-output -parameter-in-c-sharp) – podiluska
Je suis celui qui a posé cette question il y a à peu près une heure, mais c'est un problème complètement différent – ankit0311