J'ai une méthode qui est de la connexion à une base de données via Odbc. La procédure stockée qui je suis appel a une valeur de retour qui, à partir de la base de données côté est un 'Char'. Maintenant je suis en saisissant que la valeur de retour comme une chaîne et l'utiliser en simple si l'instruction. Je n'aime vraiment pas l'idée de la comparaison d'une chaîne comme celle-ci, lorsque seules deux valeurs peuvent venir de la base de données, 0 et 1.
OdbcCommand fetchCommand = new OdbcCommand(storedProc, conn);
fetchCommand.CommandType = CommandType.StoredProcedure;
fetchCommand.Parameters.AddWithValue("@column ", myCustomParameter);
fetchCommand.Parameters.Add("@myReturnValue", OdbcType.Char, 1)
.Direction = ParameterDirection.Output;
fetchCommand.ExecuteNonQuery();
string returnValue = fetchCommand.Parameters["@myReturnValue"].Value.ToString();
if (returnValue == "1")
{
return true;
}
Quelle serait la bonne façon de gérer cette situation. J'ai essayé " de le Convertir.ToBoolean () " qui semblait comme la réponse la plus évidente, mais j'ai couru dans la "Chaîne n'était pas reconnu comme valide Booléenne.' exception levée. Ai-je raté quelque chose ici, ou est-il une autre façon de faire de '1' et '0' agir comme le vrai et le faux?
Merci!