2012-04-02 16 views
12

के साथ ContentResult बनाम JsonResult मैंने हाल ही में Asp.Net Mvc2 के साथ कोड के कुछ नमूने पाए हैं जो कुछ AJAX को नियंत्रक में क्रियाओं को कॉल करता है जो ContentResult देता है।एजेक्स

मुझे इन नमूने को एमवीसी 3 में परिवर्तित करने की कोशिश करते समय कुछ समस्याओं का सामना करना पड़ा, जो कि JsonResult में रिटर्न प्रकार के कार्यों को बदले बिना।

क्या कोई मुझे बता सकता है कि AJAX कॉल के संदर्भ में ContentResult और JsonResult के बीच क्या अंतर है और मैं किस मामले में AJAX कॉल के संदर्भ में एक या दूसरे का उपयोग कर सकता हूं? मुझे here पर एक अच्छी पोस्ट मिली जो प्रत्येक प्रकार के परिणाम में विस्तार से बताती है लेकिन मेरे प्रश्न का उत्तर देने के लिए पर्याप्त नहीं है।

क्या एमवीसी 3 में ContentResult और AJAX कॉल के साथ कोई ज्ञात समस्या है?

धन्यवाद।

उत्तर

6

यदि आपका जावास्क्रिप्ट कोड वापस आ गया है तो एचटीएमएल जैसी सामग्री का एक टुकड़ा है, तो आपको एक ContentResult या PartialViewResult (यदि HTML आंशिक दृश्य का उपयोग करके स्वरूपित किया गया हो) लौटा देना चाहिए।

यदि परिणाम एक वस्तु है (विशेष रूप से एक जिसे आप फिर से जोड़ना चाहते हैं), तो यह एक जेसनरसेल होना चाहिए। http://geekswithblogs.net/michelotti/archive/2008/06/28/mvc-json---jsonresult-and-jquery.aspx

गुड लक:

यहाँ JSON के साथ काम करने के कुछ अच्छे उदाहरण हैं!

+0

वाह, तेज़ उत्तर के लिए @ रॉय डिक्टस धन्यवाद। मेरे मामले में, मैं एक एक्सएमएल स्ट्रिंग लौटाता हूं जिसका उपयोग सीधे फ़्यूज़न चार्ट ग्राफ़िक के डेटासोर्स को असाइन करने के लिए किया जाता है। क्या आपको लगता है कि इस मामले में, एक JsonResult ContentResult से बेहतर है? – Samuel

+0

यह जेएसओएन नहीं है और जावास्क्रिप्ट द्वारा संभाला जाने वाला ऑब्जेक्ट नहीं है, इसलिए यह सामग्री होगी। –

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