Maison >base de données >tutoriel mysql >Comment récupérer correctement une valeur de retour à partir d'une procédure stockée en C# ?
Récupération de la valeur de retour d'une procédure stockée en C#
Lors de l'exécution d'une procédure stockée qui renvoie une valeur en C#, l'erreur logique qui conduit souvent à un retour nul est l'omission d'exécuter la requête.
Pour exécuter la procédure stockée et récupérer la valeur de retour, vous devez utiliser Méthode ExecuteNonQuery() après avoir ajouté les paramètres nécessaires. L'extrait de code suivant montre la version corrigée du code :
SqlConnection SqlConn = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["MyLocalSQLServer"].ConnectionString.ToString()); System.Data.SqlClient.SqlCommand sqlcomm = new System.Data.SqlClient.SqlCommand("Validate", SqlConn); string returnValue = string.Empty; try { SqlConn.Open(); sqlcomm.CommandType = CommandType.StoredProcedure; SqlParameter param = new SqlParameter("@a", SqlDbType.VarChar); param.Direction = ParameterDirection.Input; param.Value = Username; sqlcomm.Parameters.Add(param); SqlParameter retval = sqlcomm.Parameters.Add("@b", SqlDbType.VarChar); retval.Direction = ParameterDirection.ReturnValue; // Execute the stored procedure sqlcomm.ExecuteNonQuery(); string retunvalue = (string)sqlcomm.Parameters["@b"].Value; } catch(Exception ex) { // Handle any exceptions here }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!