फिलहाल मैं अगर डेटाबेस पहुँचा जा सकता है की जांच करने के लिए इस कोड का उपयोग कर रहा: इस कोड को ठीक काम करता हैADO.NET: यह जांचने का तेज़ तरीका डेटाबेस सर्वर पहुंच योग्य है या नहीं?
public bool IsDatabaseOnline(string con)
{
bool isConnected = false;
SQLConnection connect = null;
try {
connect = new SQLConnection(con);
connect.Open();
isConnected = true;
} catch (Exception e) {
isConnected = false;
} finally {
if (connect != null)
connect.Close();
}
return isConnected;
}
, वहाँ एक नुकसान है। यदि सर्वर ऑनलाइन नहीं है तो यह निर्णय लेने से पहले कनेक्शन खोलने की कोशिश कर रहे लगभग 4 पूर्ण सेकंड खर्च करता है कि यह उपलब्ध नहीं है।
क्या वास्तव में इसे खोलने और टाइमआउट की प्रतीक्षा किए बिना कनेक्शन का परीक्षण करने का कोई तरीका है? डेटाबेस के समान कुछ पिंग के बराबर है?
आप अपने सर्वर एक लंबे समय के नीचे होने की उम्मीद करते हैं? –
आपको इसे 'कैच (एसक्लएक्सप्शन)' – SLaks