2010-04-21 15 views
50

मेरे पास डीबी में संग्रहीत कुछ संग्रहीत JSON स्ट्रिंग्स हैं जिन्हें मैं क्लाइंट को JsonResult के रूप में वापस लौटना चाहता हूं। मुझे पता है कि जेसन (ऑब्जेक्ट) किसी ऑब्जेक्ट को जेसन रीसेट में बदल देता है लेकिन क्या होगा यदि मेरे पास पहले से ही स्ट्रिंग में परिणाम हो? मैं इसे JsonResultक्या मैं एक JSON स्ट्रिंग को JsonResult में परिवर्तित कर सकता हूं?

उत्तर

6

पर कास्ट कर सकते आप ग्राहक के लिए स्ट्रिंग लौटाने सकते हैं और फिर $ .parseJSON() (jQuery) का उपयोग एक वास्तविक json वस्तु को यह पार्स करने के लिए।

109

आपको JsonResult वापस करने की आवश्यकता नहीं है क्योंकि इसका काम JSON स्ट्रिंग में ऑब्जेक्ट को क्रमबद्ध करना है। आप पहले से ही JSON स्ट्रिंग है, तो सिर्फ एक ContentResult में इसे वापस और सही सामग्री प्रकार निर्दिष्ट करें:

string json = //get some json from your DB 
return new ContentResult { Content = json, ContentType = "application/json" }; 

याद रखें कि आपके MVC कार्रवाई तरीकों सब, एक वापसी प्रकार के रूप में ActionResult होना चाहिए ताकि आप ContentResult लौट सकते हैं बस के रूप में JsonResult के रूप में आसानी से।

+22

'Json' विधि के समान' सामग्री 'विधि भी है, इसलिए आप' रिटर्न कंटेंट (जेसन, "एप्लिकेशन/जेसन") लिख सकते हैं; '। – Kylar

+0

@Kylar अच्छा बिंदु –

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

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