में त्रुटि प्रबंधन के साथ उलझन में मुझे 1 त्रुटि पृष्ठ होना चाहिए जो प्रदान की गई क्वेरी स्ट्रिंग के आधार पर उपयोगकर्ता को थोड़ा अलग त्रुटि संदेश प्रदर्शित करता है।एएसपीनेट 5 एमवीसी 6
मैंने एक नया asp.net 5 प्रोजेक्ट बनाते समय Startup.cs फ़ाइल में निम्न कोड देखा है।
if (env.IsDevelopment())
{
app.UseBrowserLink();
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Home/Error");
}
अपवाद होने पर मैं सही त्रुटि पृष्ठ प्रदर्शित करने में सक्षम हूं। मेरी समस्या यह है कि ऐसा लगता है कि यह केवल उन त्रुटियों को पकड़ता है जिन्हें मेरे आवेदन में नहीं रखा गया है यानी 500
के स्टेटस कोड के साथ हमेशा। क्या ये सही है?
app.UseStatusCodePagesWithReExecute("/Error/{0}");
मेरी नियंत्रक के साथ के रूप में लागू:
[HttpGet("{statusCode}")]
public IActionResult Error(int statusCode)
{
return View(statusCode);
}
यह 404
त्रुटियों को पकड़ने के लिए लगता है और सही स्थिति कोड
404
त्रुटियों मैं निम्नलिखित कोड का उपयोग कर रहा संभालने के लिए।
अगर मैं अगर बयान उदाहरण के लिए एक ही कार्रवाई का उपयोग करने के ऊपर में मेरी कोड अद्यतन:
if (env.IsDevelopment())
{
app.UseBrowserLink();
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Error/{0}");
}
स्थिति लौटा कोड हमेशा 0.
है इसके अलावा क्या होगा जब एक 400
में, 403
या कोई अन्य होता है? क्या वे पकड़े जाएंगे? यदि ऐसा है तो उन्हें किस बिंदु पर पकड़ा जाएगा?
जैसा कि आप बता सकते हैं कि मैं बहुत उलझन में हूं और किसी के लिए मुझे एक उदाहरण प्रदान करने के लिए प्यार होगा जहां सभी अलग-अलग स्टेटस कोड हैंडल किए जाते हैं।
अभ्यस्त Global.asax मदद के अंदर Application_Error घटना में त्रुटि को पकड़ने globaly? http://stackoverflow.com/questions/16884074/asp-net-mvc-plication-error-handler-in-global-asax –
यह एएसपीनेट एमवीसी 5 जैसा दिखता है? –
क्या आप कृपया 'UseExceptionHandler' के कोड पोस्ट कर सकते हैं? – Mairaj