में पार्टिकल व्यू विधियों का आह्वान किया है यदि एक सामान्य पृष्ठ लोड त्रुटियों में मैं Error
दृश्य और HandleErrorInfo
मॉडल के माध्यम से उपयोगकर्ता को अपवाद विवरण की रिपोर्ट कर सकता हूं।अजाक्स से रिपोर्टिंग त्रुटियों ने एमवीसी
एक ajax
कॉल एक Json
परिणाम त्रुटियों की उम्मीद है, मैं स्पष्ट रूप से त्रुटि संभालने के लिए और ग्राहक के लिए विवरण पारित कर सकते हैं, तो:
public JsonResult Whatever()
{
try
{
DoSomething();
return Json(new { status = "OK" });
}
catch (Exception e)
{
return Json(new { status = "Error", message = e.Message });
}
}
तो, मेरी समस्या है, मैं नहीं त्रुटि विवरण भेजने के लिए किसी भी तरह से देख सकते हैं एक अजाक्स कॉल से आंशिक दृश्य लौटने वाली कार्रवाई के लिए।
$.ajax({
url: 'whatever/trevor',
error: function (jqXHR, status, error) {
alert('An error occured: ' + error);
},
success: function (html) {
$container.html(html);
}
});
यह केवल एक एचटीपी त्रुटि कोड (जैसे आंतरिक सर्वर त्रुटि) की रिपोर्ट करेगा जो क्लाइंट के लिए सहायक नहीं है। क्या कोई सफल पार्टियल व्यू (एचटीएमएल) परिणाम या त्रुटि संदेश पास करने के लिए कुछ चालाक चाल है?
ViewResult
से एचटीएमएल का स्पष्ट रूप से मूल्यांकन करना और Json
ऑब्जेक्ट के हिस्से के रूप में इसे एक स्थिति के साथ वापस लौटाना बहुत सुगंधित लगता है। क्या इस परिदृश्य को संभालने के लिए एक स्थापित पैटर्न है?
डैरिन में AjaxAuthorizeAttribute पर एक नज़र MVC के अपने ज्ञान मुझे फिर से astounds है। मैंने यहां कुछ बिंदुओं को पूरी तरह से समझ नहीं लिया, लेकिन मुझे पता चला कि मैं वैश्विक फिल्टर में पंजीकृत AJAX फ़िल्टर के साथ कुछ और अधिक हासिल कर सकता हूं। ऐसा लगता है कि ठीक काम कर रहा है। धन्यवाद। – fearofawhackplanet
बस एक नोट, यदि आप 404 के जाल में फंसाने के लिए उपर्युक्त कोड का उपयोग कर रहे हैं और एक कस्टम पेज दिखाते हैं तो आप शायद एक प्रतिक्रिया जोड़ना चाहते हैं। ट्रीस्कीपआईइस कस्टमइरर्स = सच (.नेट 3.5 केवल मुझे विश्वास है) –
एक आकर्षण, अजीब तरह काम करता है – Dilip