ASP.NET वेब पेज - पेज लेआउट
वेब पेजों के साथ एक सुसंगत लेआउट वाली वेब साइट बनाना आसान है।
एक सुसंगत देखो
इंटरनेट पर आप कई वेब साइटों को एक समान रूप और अनुभव के साथ खोजेंगे:
- हर पेज का हेडर एक जैसा होता है
- प्रत्येक पृष्ठ में एक ही पादलेख होता है
- प्रत्येक पृष्ठ की शैली और लेआउट समान है
वेब पेजों के साथ यह बहुत कुशलता से किया जा सकता है। आपके पास अलग-अलग फ़ाइलों में सामग्री के पुन: प्रयोज्य ब्लॉक (सामग्री ब्लॉक), जैसे शीर्षलेख और पाद लेख हो सकते हैं।
आप एक लेआउट टेम्प्लेट (लेआउट फ़ाइल) का उपयोग करके अपने सभी पृष्ठों के लिए एक सुसंगत लेआउट भी परिभाषित कर सकते हैं।
सामग्री ब्लॉक
कई वेबसाइटों में ऐसी सामग्री होती है जो प्रत्येक पृष्ठ पर प्रदर्शित होती है (जैसे शीर्षलेख और पादलेख)।
वेब पेजों के साथ आप अलग फाइलों से सामग्री आयात करने के लिए @RenderPage() विधि का उपयोग कर सकते हैं।
सामग्री ब्लॉक (किसी अन्य फ़ाइल से) को वेब पेज में कहीं भी आयात किया जा सकता है, और इसमें किसी भी नियमित वेब पेज की तरह टेक्स्ट, मार्कअप और कोड शामिल हो सकते हैं।
उदाहरण के तौर पर सामान्य शीर्षलेखों और पादलेखों का उपयोग करने से आपका बहुत सारा काम बच जाता है। आपको प्रत्येक पृष्ठ में समान सामग्री लिखने की आवश्यकता नहीं है, और जब आप शीर्ष लेख या पाद लेख फ़ाइलों को बदलते हैं, तो सामग्री आपके सभी पृष्ठों में अपडेट हो जाती है।
यह कोड में कैसा दिखता है:
उदाहरण
<html>
<body>
@RenderPage("header.cshtml")
<h1>Hello Web Pages</h1>
<p>This is a paragraph</p>
@RenderPage("footer.cshtml")
</body>
</html>
लेआउट पेज का उपयोग करना
पिछले अनुभाग में, आपने देखा कि एक ही सामग्री को कई वेब पेजों में शामिल करना आसान है।
एक सुसंगत रूप बनाने का एक अन्य तरीका एक लेआउट पृष्ठ का उपयोग करना है। एक लेआउट पेज में वेब पेज की संरचना होती है, लेकिन सामग्री नहीं। जब एक वेब पेज (सामग्री पृष्ठ) एक लेआउट पेज से जुड़ा होता है, तो यह लेआउट पेज (टेम्पलेट) के अनुसार प्रदर्शित होगा।
लेआउट पेज एक सामान्य वेब पेज की तरह है, केवल @RenderBody () विधि में कॉल करने के अलावा, जहां सामग्री पृष्ठ शामिल किया जाएगा।
प्रत्येक सामग्री पृष्ठ को एक लेआउट निर्देश के साथ शुरू होना चाहिए ।
यह कोड में कैसा दिखता है:
लेआउट पेज:
<html>
<body>
<p>This is header text</p>
@RenderBody()
<p>© 2014 W3Schools. All rights reserved.</p>
</body>
</html>
कोई भी वेब पेज:
@{Layout="Layout.cshtml";}
<h1>Welcome to W3Schools</h1>
<p>
Lorem ipsum dolor sit amet, consectetur adipisicing elit,sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis
nostrud exercitation ullamco laborisnisi ut aliquip ex ea commodo consequat.
</p>
सूखा - अपने आप को न दोहराएं
दो ASP.NET टूल, कंटेंट ब्लॉक और लेआउट पेज के साथ, आप अपने वेब एप्लिकेशन को एक सुसंगत रूप दे सकते हैं।
ये उपकरण आपके बहुत काम की बचत भी करते हैं, क्योंकि आपको सभी पृष्ठों पर समान जानकारी को दोहराने की आवश्यकता नहीं होती है। मार्कअप, शैली और कोड को केंद्रीकृत करना वेब अनुप्रयोगों को अधिक प्रबंधनीय और बनाए रखने में आसान बनाता है।
फाइलों को ब्राउज होने से रोकना
ASP.NET के साथ, एक अंडरस्कोर से शुरू होने वाले नाम वाली फाइलों को वेब से ब्राउज नहीं किया जा सकता है।
यदि आप अपने सामग्री ब्लॉक या लेआउट फ़ाइलों को अपने उपयोगकर्ताओं द्वारा देखे जाने से रोकना चाहते हैं, तो फ़ाइलों का नाम बदलें:
_header.cshtml
_footer.cshtml
_लेआउट.cshtml
संवेदनशील जानकारी छिपाना
ASP.NET के साथ, संवेदनशील जानकारी (डेटाबेस पासवर्ड, ईमेल पासवर्ड, आदि) को छिपाने का सामान्य तरीका जानकारी को "_AppStart" नामक एक अलग फ़ाइल में रखना है।
_AppStart.cshtml
@{
WebMail.SmtpServer = "mailserver.example.com";
WebMail.EnableSsl = true;
WebMail.UserName = "[email protected]";
WebMail.Password = "your-password";
WebMail.From = "[email protected]";
}