У мене є метод, який підключається до бази даних через Odbc. Збережена процедура, яку я викликаю, має повернене значення, яке з боку бази даних є "Char". Зараз я захоплюю це повертане значення як рядок і використовую його у простому операторі if. Мені дуже не подобається ідея порівнювати такий рядок, коли з бази даних можуть повернутися лише два значення, 0 і 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;
}
Яким буде правильний спосіб вирішення цієї ситуації. Я спробував "Convert.ToBoolean ()", що здавалося очевидною відповіддю, але я наткнувся на "Рядок не був визнаний дійсним булевим значенням. 'виняток. Мені чогось тут не вистачає, чи є інший спосіб змусити "1" та "0" поводитися як істинно та хибно?
Дякую!