@RenderBody
आपके पृष्ठ की सामग्री को किसी भी नामित अनुभाग में नहीं प्रस्तुत करता है। यदि आपकी सामग्री के सभी आपके परिभाषित अनुभागों में से एक के भीतर है, तो कोई बात नहीं है। हालांकि ...
रेजर सिंटैक्स में, @RenderSection
मास्टर पृष्ठों को प्रतिस्थापित करता है। यह आपको विशेष क्षेत्रों के लिए पृष्ठ के अनुभागों को बनाने की अनुमति देता है, और फिर @RenderBody
घोषणा के स्थान पर सामग्री के मुख्य भाग को स्वाभाविक रूप से उभरने की अनुमति देता है।
मान लें कि आप एक चालान लिख रहे हैं। RenderBody
क्षेत्र उस पृष्ठ का वह हिस्सा होगा जिसमें आपके चालान लाइन आइटम होंगे। यह ज्यादातर रिपोर्टों के बारे में सच है; हमेशा एक हेडर सेक्शन, एक बॉडी सेक्शन और एक पाद लेख होता है।
संभवतः, एक वेब पेज के उपयुक्त क्षेत्र में एक सेक्शन को प्रस्तुत करने से आप उचित अर्थपूर्ण व्यवहार प्राप्त कर सकते हैं, जैसे कि फ़ूटर को स्टाइल करना, जिस तरह से यह हमेशा किसी पृष्ठ के नीचे दिखाई देता है।
<footer>
@RenderSection("Footer", @<span>This is my footer!</span>)
</footer>
http://msdn.microsoft.com/en-us/vs2010trainingcourse_aspnetmvc3razor_topic2.aspx
http://haacked.com/archive/2011/03/05/defining-default-content-for-a-razor-layout-section.aspx
स्रोत
2013-01-14 16:31:07
धन्यवाद - मुझे ऐसा लगा। बस सोच रहा है कि क्या रेंडरबॉडी के साथ कोई विशेष कैशिंग या कुछ भी था। व्यक्तिगत रूप से यदि मेरे पास एक से अधिक सेक्शन हैं तो मुझे लगता है कि यह रेंडरबॉडी का उपयोग करने के लिए और दूसरे के लिए अनुभागों के बजाय अनुभागों में सब कुछ रखने के लिए थोड़ा क्लीनर है। – Melina
मेरा संपादन देखें .... रेंडरबॉडी आपको सामान्य सामग्री के लिए किसी अन्य परिभाषित खंड को बनाए रखने के बिना अनुभागों वाले सामान्य पृष्ठ को प्रस्तुत करने की अनुमति देता है। इस प्रकार सभी रिपोर्टें काम करती हैं ... मुख्य सामग्री निकाय को शेष पृष्ठ पर अनुभागों के बारे में किसी भी जागरूकता की आवश्यकता नहीं है। इस तरह, आप शरीर को अन्य वर्गों के बिना एक सामान्य वेब पेज के रूप में प्रस्तुत कर सकते हैं (और "बॉडी सेक्शन" को परिभाषित किए बिना), या इसे अलग-अलग अनुभागों के साथ एक पृष्ठ में प्रस्तुत करें, और यह अभी भी काम करेगा। –