मेरे पास एक विधि है जो ओडीबीसी के माध्यम से एक डेटाबेस से जुड़ रही है। संग्रहीत प्रक्रिया जिसे मैं कॉल कर रहा हूं उसका रिटर्न मान है जो डेटाबेस की ओर से एक 'चार' है। अभी मैं उस वापसी मान को एक स्ट्रिंग के रूप में ले रहा हूं और एक साधारण यदि कथन में इसका उपयोग कर रहा हूं। मुझे वास्तव में इस तरह से एक स्ट्रिंग की तुलना करने का विचार पसंद नहीं है जब केवल दो मान डेटाबेस, 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' बनाने का एक और तरीका है, जैसे कि सच्चा और झूठा?
धन्यवाद!