मेरे पास निम्न कोड है जो फेंकता है
try {fileInfo.CopyTo (गंतव्य, सच ); } पकड़ (IOException ioex) {} लॉग 4नेट लॉग:
35552 | 384 | 1 | त्रुटि | सिस्टम.आईओ .__ पर त्रुटि। विनोईएअर (इन्टर 32 त्रुटि कोड, स्ट्रिंग शायद फुलपाथ) मुझे इस अपवाद को खाने की जरूरत है और नहीं लॉग इन करें मुझे इस त्रुटि संदेश को दबा देना होगा। ऐसा कैसे करें
मैं संदेह है कि आपको Log4net को देखने के लिए यह देखने की आवश्यकता होगी कि क्या केवल एक अनियंत्रित अपवाद (यदि वांछित है) या किसी विशिष्ट स्थान पर किसी अपवाद को अनदेखा करने के लिए कहने का तरीका करने के लिए कोई तरीका है।
क्यों विशेष रूप से क्या आप इस छिपाना चाहते हैं? अगर ऐसा इसलिए होता है क्योंकि यह बहुत कुछ होता है और बेकार जानकारी के साथ लॉग को भरता है तो आप यह सुनिश्चित करने के लिए कि यह एक उचित मौका है जो सफल होगा (यानी पथ वैध है, कॉल करने से पहले आप कुछ मान्यकरण करना चाहते हैं) फ़ाइल मौजूद है, आदि)। यह पहले स्थान पर अपवादों की संख्या में कटौती करेगा। अपवाद कुछ हद तक प्रदर्शन-वार हैं इसलिए आप उन्हें तब तक नहीं पहुंचाना चाहते हैं जब आप कर सकते हैं।
जैसा कि मैंने इस प्रश्न पर टिप्पणी में उल्लेख किया है, आप पूरी तरह से अपवाद निपटने को नहीं हटा सकते क्योंकि हमेशा एक मौका दूसरे प्रोग्राम ने फाइल को मौजूदा और वास्तव में कॉलिंग CopyTo को चेक करने के बीच में हटा दिया है, लेकिन यह एक अत्यंत दुर्लभ घटना होनी चाहिए। यदि यह अक्सर नहीं हो रहा है और / या आप पहले से ही जांच कर रहे हैं, यह कभी-कभी लॉग इन होने में क्या नुकसान है?
Comments
Post a Comment