Tôi có một phương pháp đang kết nối với cơ sở dữ liệu qua Odbc. Thủ tục được lưu trữ mà tôi đang gọi có giá trị trả về từ phía cơ sở dữ liệu là 'Char'. Ngay bây giờ tôi đang lấy giá trị trả về đó dưới dạng một chuỗi và sử dụng nó trong một câu lệnh if đơn giản. Tôi thực sự không thích ý tưởng so sánh một chuỗi như thế này khi chỉ có hai giá trị có thể quay trở lại từ cơ sở dữ liệu, 0 và 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;
}
Đâu sẽ là cách thích hợp để xử lý tình huống này. Tôi đã thử 'Convert.ToBoolean ()' có vẻ như là câu trả lời rõ ràng nhưng tôi gặp phải 'Chuỗi không được công nhận là Boolean hợp lệ. 'ngoại lệ bị ném. Tôi có thiếu một cái gì đó ở đây, hay có cách nào khác để làm cho '1' và '0' hoạt động như đúng và sai?
Cảm ơn!