cmd1.ExecuteScalar()
एक बॉक्सिंग पूर्णांक नहीं लौटा रहा है। इसे किसी ऑब्जेक्ट को असाइन करें और डीबगर में देखें कि यह वास्तव में क्या है।
मुझे लगता है कि यह एक दशमलव या एक डबल लौटाएगा, और आपको यह करने की ज़रूरत है:
Int32 result = (Int32)(double)cmd1.ExecuteScalar();
या:
Int32 result = (Int32)(Decimal)cmd1.ExecuteScalar();
[नीचे कमेंट में एक प्रश्न के उत्तर में संपादित करें]
दशमलव मान रखने के लिए, बस यह करें:
Decimal result = (Decimal) cmd1.ExecuteScalar();
यदि आपको आवश्यकता हो, तो आप दशमलव को दोगुना कर सकते हैं:
double result = (double)(Decimal) cmd1.ExectuteScalar();