मुझे लगता है कि आप डब्ल्यूसीएफ का उपयोग कर रहे हैं, क्योंकि आपका प्रश्न इसके साथ टैग किया गया है। डब्लूएफसी के साथ अपवाद हैंडलिंग में एक अच्छा अभ्यास अपवाद को आपके उपभोक्ता को तार भरने के लिए अनुमति नहीं दे रहा है, बल्कि इसके बजाय सार्थक FaultExceptions को फेंक देता है।
आपको हमेशा प्रयास करना चाहिए ... अगर आपके पास कोई अपवाद उत्पन्न हो सकता है तो आपके ऑपरेशन में ब्लॉक को पकड़ें। आप बुलबुला के लिए कच्चे excption अनुमति देते हैं, केवल दो स्थितियों परिणाम कर सकते हैं: आप अपनी सेवा दोष में अपवाद विवरण देने के लिए कॉन्फ़िगर किया है, तो आप अपनी सेवा उद्घाटन अपने आप को सुरक्षा उल्लंघनों के लिए के आंतरिक सामने आ जाएगी। या आप यह आपकी सेवा में विन्यस्त और उपभोक्ता है जो उन्हें या सहायता टीम के लिए बहुत उपयोगी नहीं है एक बहुत ही सामान्य संदेश बताता है कि कुछ गलत हो गया, हो जाता है नहीं है।
आपको क्या करना चाहिए एक या अधिक FaultExceptions घोषित, क्या संदेश आप उपयोगकर्ता चाहते हैं पर निर्भर करता है आपके ऑपरेशन से प्राप्त करने के लिए, उन्हें अपने आपरेशन घोषणा पर FaultContracts के रूप में सजाने के लिए है। फिर आप कोशिश कर सकते हैं ... विशिष्ट अपवादों को पकड़ें और विशिष्ट दोषों को फेंक दें। आप भी कोशिश कर सकते हैं ... कैच अपवाद पकड़ता है और एक बहुत ही सामान्य फॉल्ट फेंक देता है।
यहां कुंजी, आंतरिक रूप से आपके ऑपरेशन के साथ क्या चल रहा है, इस बारे में बहुत अधिक जानकारी प्रकट नहीं कर रही है - विशेष रूप से स्टैक निशान!
गलती सिर्फ एक और डेटा अनुबंध है, इसलिए इसे आपके डब्लूएसडीएल में घोषित किया गया है। इसका मतलब है कि आपका उपभोक्ता विशेष रूप से गलती को पकड़ सकता है और आपके ऑपरेशन से फंसे दोषों पर प्रतिक्रिया कर सकता है जैसे कि यह उनके कोड से फेंक दिया गया अपवाद था।
उम्मीद है कि इससे मदद मिलती है।
जो।
स्रोत
2008-12-15 13:36:46