2008-12-16 16 views
5

में कस्टम त्रुटि हैंडलिंग मैं एएसपी एमवीसी में दिए गए डिफ़ॉल्ट त्रुटि हैंडलिंग से आगे जाना चाहता हूं। मेरे पास एक त्रुटि नियंत्रक है, इसलिए मैं उम्मीद कर सकता हूं कि क्या हुआ, इसके अनुसार मैं अलग-अलग त्रुटि संदेश दे सकता हूं: यानी अमान्य तर्क, अनुमति अस्वीकार, ओएमजी डाटाबेस डेड, आदिएएसपी एमवीसी

लेकिन मुझे यह नहीं लगता कि यह कैसे करना है, यह है मैंने जो कोशिश की है:

[HandleError(View="/Errors/InvalidArgument",ExceptionType=typeof(ArgumentException))] 

यह रनटाइम त्रुटि देने के समाप्त होता है।

इसके अलावा, एक ही विषय पर, यह अधिक पैरामीटर, जैसे कि मैं त्रुटि नियंत्रक से गुजर सकता है जोड़ना संभव है:

[HandleError(View="/Errors/InvalidArgument",ExceptionType=typeof(ArgumentException), Error="dumb arguments")] 

धन्यवाद

+0

+1 और सटीक सहायता की भी आवश्यकता है। –

उत्तर

2

बस दृश्य नाम निर्दिष्ट, यह नहीं पथ ... तर्क पारित करने के लिए, मुझे नहीं लगता कि आप कर सकते हैं। 'ओएमजी डाटाबेस डेड' के लिए

+0

मैंने कोशिश की, यह काम नहीं किया ... यह कैसे पता चलेगा कि नियंत्रक किस तरह से जाना है? – qui

+0

यह नियंत्रक के पास नहीं जाएगा, यह दृश्य में जाएगा। यदि आप किसी विशिष्ट नियंत्रक पर जाना चाहते हैं, तो आपको अपवाद पकड़ना होगा और स्वयं को रीडायरेक्ट करना होगा (मुझे लगता है)। अपवाद विवरण संग्रहीत करने के लिए आप TempData का उपयोग कर सकते हैं। आप नौकरी करने के लिए एक एक्शनफिल्टर लिखने में सक्षम हो सकते हैं ... – Kieron

+0

यह "नियंत्रक के पास नहीं जाता है।" यह सिर्फ एक दृश्य नाम निर्दिष्ट करता है, जैसे कियरन ने कहा। स्रोत कोड देखें; यह तुच्छ है। व्यू नाम किसी अन्य दृश्य नाम की तरह हल किया गया है, पहले वर्तमान नियंत्रक में, फिर साझा में (डिफ़ॉल्ट वेबफॉर्म व्यूइंजिन में, वैसे भी)। –

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