मैं अपने एक्शन से 404 या फ़ाइल नॉटफाउंड अपवाद/परिणाम कैसे फेंक सकता हूं और आईआईएस 404 पेज दिखाने के लिए अपने कस्टम एरर कॉन्फ़िगरेशन सेक्शन का उपयोग करने देता हूं?एएसपीनेट एमवीसी में 404 एक्शन्रेसल्ट या अपवाद को फेंकने/वापस करने और आईआईएस को
मैं इतना
<customErrors mode="On" defaultRedirect="/trouble">
<error statusCode="404" redirect="/notfound" />
</customErrors>
एक ActionResult में मेरा पहला प्रयास यह does not काम जोड़ने की कोशिश करता है कि जैसे मेरी customErrors परिभाषित किया है।
public class NotFoundResult : ActionResult {
public NotFoundResult() {
}
public override void ExecuteResult(ControllerContext context) {
context.HttpContext.Response.TrySkipIisCustomErrors = false;
context.HttpContext.Response.StatusCode = 404;
}
}
लेकिन यह सिर्फ एक रिक्त पृष्ठ से पता चलता है और मेरे/नहीं पाया पेज
:(
?
कॉल कर सकते हैं इस अवनत था क्योंकि एक हाथ से यह कर नहीं होना चाहिए। जैसा कि किसी अन्य उत्तर में दिखाया गया है HttpNotFound नियंत्रक विधि का उपयोग करें। – xanadont
सच - लेकिन एएसपी.नेट एमवीसी 3 में HttpNotFound पेश किया गया था। यह प्रश्न (और मेरा उत्तर) पूर्व-तिथियां है और पिछले संस्करणों में एक उचित दृष्टिकोण था। मैंने अब एमवीसी 3 में पसंदीदा नए दृष्टिकोण को चित्रित करने के लिए अपना जवाब संपादित कर लिया है। –
रैड। आपको वापस वोट दिया। – xanadont