जब हम नए रेजर व्यू इंजन के लिए हमारे प्रोजेक्ट को परिवर्तित कर रहे थे, तब मैं इस समस्या में भाग गया। मेरे द्वारा लिया गया दृष्टिकोण थोड़ा अलग था क्योंकि हमें C # से JSON डेटा उत्पन्न करना था और इसे पृष्ठ लोड पर आउटपुट करना चाहता था।
मैंने आखिरकार रॉविवि को लागू करने के लिए क्या किया जो कि cshtml फाइलों के अंदर व्यू के समानांतर था। अनिवार्य रूप से, एक कच्ची स्ट्रिंग प्राप्त करने के लिए,
@(new HtmlString(View.Foo))
// became
@RawView.Foo
इसके लिए प्रोजेक्ट लेआउट में कुछ बदलाव करने की आवश्यकता है, इसलिए मैंने अभी इसके बारे में एक ब्लॉग पोस्ट लिखी है । संक्षेप में, इसके लिए MVC के डायनामिक व्यूडाउडर और डुप्लिकेट के नए कार्यान्वयन की आवश्यकता होती है जिसमें RawView शामिल होता है। मैंने भी आगे बढ़कर इंडेक्स ऑपरेटर को अनुमति देने के लिए RawView पर लागू किया
@RawView["Foo"]
ऑफ-चांस में कि किसी को डेटा की चाबी की सूची के साथ लूप करना है।
Aurse की टिप्पणी को पढ़ना, यह शायद बेहतर होता अगर मैंने इसे RawView के बजाय एक शाब्दिक नाम दिया होता।
new HtmlString()
MVC 3 और साथ ही उस प्रकार का उपयोग करने में सक्षम हैं , जो कि .NET 4 है।