2010-04-28 17 views
6

यदि मेरी वेब विधि एक अपवाद फेंकता है, तो ग्राहक को उस अपवाद को पारित करने के लिए सबसे अच्छा अभ्यास क्या है?एक्सएमएल वेब सेवाओं में, ग्राहक को अपवाद पारित करने के लिए सबसे अच्छा अभ्यास क्या है?

उत्तर

4
  • सादे पुराने ASMX सेवाओं में इस अपवाद को पकड़ने और एक SoapException rethrowing और Detail संपत्ति भर कर।
  • डब्ल्यूसीएफ में FaultException<T> फेंककर। जहां तक ​​ को पकड़ने के लिए एक अच्छी जगह है, यह एक कस्टम IErrorHandler है जो क्लाइंट को उचित गलती प्रदान करेगा।
+0

तो, ऐसा कुछ? पकड़ (अपवाद) { नया साबुन अपवाद(); } – mcass20

+0

यदि आप एएसएमएक्स वेब सेवा विधि से अपवाद फेंकते हैं, तो अपवाद को सोपएक्सप्शन में कभी भी बदल दिया जाता है। यदि आप सोपएक्सप्शन की तुलना में अधिक जानकारी वापस लेना चाहते हैं, तो आपको स्पष्ट रूप से अपना स्वयं का साबुन बनाने की आवश्यकता है और इसके बाद विवरण संपत्ति को डारिन के रूप में सेट किया गया है, उसके माध्यम से। यदि आप कुछ विशेष वापस नहीं करना चाहते हैं, तो आपको स्वयं को एक नया साबुन अपवाद बनाने की आवश्यकता नहीं है। यह स्वचालित रूप से होगा। साबुन अपवाद दस्तावेज की जांच करें। –

संबंधित मुद्दे

 संबंधित मुद्दे