नहीं कहा जा रहा है मेरे पास एक बेस कंट्रोलर क्लास है जहां मैं नियंत्रक को ओवरराइड कर रहा हूं। कुछ अपर्याप्त नियंत्रकों के लिए जेनेरिक त्रुटि हैंडलिंग प्रदान करने के लिए अपरिपक्व हैंडलर विधि जो इस कक्षा से प्राप्त होगी (ये एपीआई नियंत्रक हैं जो JSON परिणाम लौटाएंगे)। जब नियंत्रक द्वारा अपवाद उठाया जाता है तो ऑनएक्सप्शन विधि कभी नहीं बुलाई जाती है। क्या कोई देखता है कि मैं क्या गलत कर रहा हूं, या क्या इस स्थिति को संभालने का एक बेहतर तरीका है?एएसपी.नेट एमवीसी नियंत्रक .ऑनएक्सप्शन को
MVC 1,0
बेस कक्षा का उपयोग करना:
public class APIController : Controller
{
protected override void OnException(ExceptionContext filterContext)
{
//This is never called
filterContext.Result =
new JsonResult();
base.OnException(filterContext);
}
}
इनहेरिट कक्षा:
public class MyController : APIController
{
public AjaxResult ForcedException()
{
throw new SystemException();
}
}
"नियंत्रक द्वारा अपवाद उठाए जाने पर ऑनएक्सप्शन विधि कभी नहीं बुलाई जाती है" - क्या आपने इसे डीबगर के साथ जांच लिया? यह आपके प्रश्न से स्पष्ट नहीं है। –
मैंने इसे डीबगर से और लॉग स्टेटमेंट्स का उपयोग करके और डीबगर के बाहर चलाने की कोशिश की है। उनमें से कोई भी मेरे लिए काम नहीं कर रहा है। –