Bir veritabanına Odbc üzerinden bağlanan bir yöntemim var. Aradığım saklı yordamın, veritabanı tarafından bir 'Char' olan bir dönüş değeri var. Şu anda bu dönüş değerini bir dizge olarak alıyorum ve basit bir if ifadesinde kullanıyorum. Veritabanından 0 ve 1 olmak üzere yalnızca iki değer geri döndüğünde böyle bir dizeyi karşılaştırma fikrini gerçekten sevmiyorum.
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;
}
Bu durumu halletmenin doğru yolu ne olabilir? Açık bir cevap gibi görünen 'Convert.ToBoolean ()' ı denedim, ancak 'String geçerli bir Boolean olarak tanınmadı. 'istisna atılıyor. Burada bir şey mi özlüyorum yoksa "1" ve "0" ın doğru ve yanlış gibi davranmasını sağlamanın başka bir yolu var mı?
Teşekkürler!