2009-06-09 8 views
5

मेरा एएसपी.नेट 2.0 वेब ऐप में एक वेब सेवा शामिल है, जो कस्टम त्रुटि संदेशों के साथ विभिन्न अपवादों को फेंकता है (उदाहरण के लिए "आपके पास इस आइटम तक पहुंच नहीं है")। ये एएसपी.NET AJAX कॉलबैक हैंडलर में स्क्रीन पर दिखाए जाते हैं।वेब सेवा के लिए कस्टमर बंद करें केवल

शेष ऐप कुछ कस्टम त्रुटि पृष्ठों द्वारा कवर किया गया है, जो web.config में सामान्य तरीके से निर्दिष्ट है। अगर मैं customErrors web.config में सक्षम होनी

<customErrors mode="RemoteOnly" defaultRedirect="Error.html"> 
     <error statusCode="404" redirect="NotFound.html" /> 
     <error statusCode="403" redirect="NoAccess.html" /> 
</customErrors> 

मेरे समस्या है, मैं खो मेरी त्रुटि संदेश वेब सेवा से लौटे - बजाय वे

बदल दिए जाते हैं "अनुरोध को संसाधित करने में त्रुटि हुई" - जो मेरे या उपयोगकर्ताओं के लिए बहुत उपयोगी नहीं है।

क्या वेब सेवा के लिए कस्टम त्रुटियों को बंद करने का कोई तरीका है?

उत्तर

4

अपनी वेब सेवा को अलग निर्देशिका में रखें और इस निर्देशिका में अतिरिक्त web.config फ़ाइल डालें। प्रत्येक निर्देशिका में यह वेब.कॉन्फिग हो सकता है जिसमें इस निर्देशिका की सेटिंग्स (और इस निर्देशिका के अंदर निर्देशिकाएं) हो।

+0

बिल्कुल सही - धन्यवाद smok1 :) –

+0

कोई समस्या नहीं! एकमात्र कारण यह है कि जब आप सेटिंग्स को बदलते समय probalaly को दो web.config फ़ाइलों को अपडेट करना होगा (उदाहरण के लिए जब आप कनेक्शन स्ट्रिंग को बदलने का निर्णय लेते हैं, या उस तरह sth) अपने वेब एप्लिकेशन में। – smok1

+0

@ smok1: आपको केवल नेस्टेड .config फ़ाइल में CustomErrors तत्व होना चाहिए - ऐसी कोई भी चीज़ जोड़ने की आवश्यकता नहीं है जिसे आप बदलना नहीं चाहते हैं। –

3

हाँ, custom errors element

आवेदन फाइल पदानुक्रम में किसी भी स्तर पर परिभाषित किया जा सकता।

इसलिए प्रदान किया गया है कि आपका वेब सेवा एक फ़ोल्डर में है, आप उस फ़ोल्डर के लिए web.config जोड़ सकते हैं और उन्हें बंद कर सकते हैं।

+0

मैं इसे भी वोट दूंगा - आपकी मदद के लिए धन्यवाद –

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