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# ?

Comment récupérer correctement une valeur de retour à partir d'une procédure stockée en C# ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-05 14:47:40698parcourir

How to Correctly Retrieve a Return Value from a Stored Procedure in 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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn