मैं RazorEngine साथ निम्नलिखित उस्तरा टेम्पलेट का उपयोग करना चाहते हैं:RazorEngine - उपयोग लेआउट और Html.Raw
@{
Layout = null;
}
@Html.Raw(MyNamespace.MyClass.SomePropertyWithHtml)
जब मैं इसे कहते 2 त्रुटियों मिल - एक शिकायत यह लेआउट को संभाल नहीं कर सकते हैं और एक अन्य शिकायत यह नहीं जानता कि एचटीएमएल सहायक से कैसे निपटें।
यहां अन्य प्रश्न और उत्तर हैं जो सुझाव देते हैं कि यह v3 में संभव है, और मैं NuGet - v3.0.8 पर वर्तमान पैकेज का उपयोग कर रहा हूं - लेकिन यह स्पष्ट नहीं है कि यह कैसे किया जाता है। सुझाव है कि
string html = RazorEngine.Razor.Parse(File.ReadAllText(path));
अन्य उत्तर पहले Razor.SetBaseTemplate का उपयोग, जो वर्तमान स्रोत या Git पर 3.0 शाखा में प्रकट नहीं होता: वर्तमान में मैं इतना है कि यह फोन कर रहा हूँ। कोड को देखते हुए मुझे लेआउट और अनुभागों का संदर्भ कोड दिखाई देता है, लेकिन लेआउट कोड नाम से टेम्पलेट को हल करने पर निर्भर करता है, जबकि मैं जो करने की कोशिश कर रहा हूं उसे टेम्पलेट को हल करने की भी आवश्यकता नहीं है - मुझे बस इसे सामना करने की आवश्यकता है लेआउट = शून्य के साथ। कोड में एक एमवीसी टेम्पलेटबेस भी शामिल है जो वेब प्रोजेक्ट में एचटीएमएलहेल्पर पेश करता प्रतीत होता है - लेकिन यह उस प्रोजेक्ट में एकमात्र वर्ग है और वेब या कोर प्रोजेक्ट्स में कहीं भी संदर्भित नहीं है।
यह समान प्रश्न: RazorEngine issues with @Html
बस मुखपृष्ठ के लिए लिंक तुम वहाँ और अधिक जानकारी प्राप्त कर सकते हैं कह रही है - होमपेज पर बस एक छोटी परियोजना का वर्णन वाक्य है।
तो, मैं रेजोरइंजिन v3.0 के साथ उपरोक्त रेजर व्यू को कैसे पार्स करूं?
ओह, तुम RazorEngine उपयोग कर रहे हैं ... ध्यान में रखना एक बात है कि उस्तरा MVC नहीं है। नए रेजोरइंजिन के साथ बहुत सारे काम किए गए हैं लेकिन अंतरीस हाल ही में व्यस्त रहा है। इसका उपयोग करने के लिए आपको अपनी फ़ाइल के शीर्ष पर '@inherits MvcTemplateBase' का उपयोग करने में सक्षम होना चाहिए। –
Buildstarted
सुझाव के लिए धन्यवाद। मुझे पता है कि रेजर और एमवीसी अलग हैं, लेकिन मेरा लक्ष्य सामान्य एएसपी.Net पाइपलाइन के अंदर और बाहर एक ही एमवीसी रेजर टेम्पलेट्स का उपयोग करना है। NuGet पर संस्करण में MvcTemplateBase नामक कक्षा नहीं है। गिट पर नवीनतम संस्करण करता है, लेकिन यह सामान्य नहीं है - यह सिर्फ एमवीसी टेम्पलेटबेस है। अगर मैं @inherits RazorEngine.Razor.MvcTemplateBase जैसी लाइन जोड़ता हूं तो मुझे टेम्पलेट सेवा में एक अपवाद मिलता है। सैममोडेल एक्स्प्लिट टेम्पलेट प्रकार की शिकायत करने के लिए मॉडल नामक कोई संपत्ति नहीं है। विचार? –