ASP.NET Web Pages - ページレイアウト

Web Pagesを使用すると、レイアウトが一貫したウェブサイトを作成するのが非常に簡単です。

一貫した外観

インターネット上には、統一された外観を持つ多くのウェブサイトがあります:

  • 各ページに同じヘッダーがあります
  • 各ページに同じフッターがあります
  • 各ページに同じスタイルとレイアウトがあります

Web Pagesを使用すると、これらを効率的に実現できます。ヘッダーやフッターのような再利用可能なコードブロック(コンテンツブロック)を独立したファイルで取得できます。

すべてのページに一貫したレイアウトを定義することもできます。レイアウトテンプレート(レイアウトファイル)を使用します。

コンテンツブロック

多くのウェブサイトには、各ページに表示する必要がある内容があります(例えば、ヘッダーやフッター)。

Web Pagesを使用して、 @RenderPage() 方法から異なるファイルに内容をインポートします。

コンテンツブロック(別のファイルから)は、ウェブページのどこにでも入力でき、テキスト、タグ、コードを含むことができます。これらは通常のウェブページと同じように動作します。

一般的なヘッダーやフッターを使用すると、多くの作業が省けます。各ページで同じ内容を書かなくても良く、ヘッダーやフッターのファイルを変更すると、すべてのページで内容が更新されます。

コードではこんな感じです:

<html>
<body>
@RenderPage("header.cshtml")
<h1>ウェブページへようこそ</h1> 
<p>これは段落です</p>
@RenderPage("footer.cshtml")
</body>
</html>

ทดสอบตัวอย่าง

レイアウトページを使用して

前の内容では、同じ内容を複数のウェブページで参照するのが非常に簡単であることをご覧いただきました。

一貫した外観を作成するもう一つの方法は、レイアウトウェブページを使用することです。レイアウトウェブページは内容ではなく、ページの構造を含んでいます。ウェブページ(コンテンツページ)がレイアウトページ(テンプレート)にリンクされると、レイアウトページに基づいて表示されます。

レイアウトページは通常のウェブページと似ていますが、コンテンツページを参照する場所で呼び出されます。 @RenderBody() 方法で

各コンテンツページは必ず以下の レイアウトコマンド開頭。

コードではこんな感じです:

レイアウトウェブページ:

<html>
<body>
<p>นี่คือข้อความ。</p>
@RenderBody()
<p>© 2012 CodeW3C.com. สิทธิ์ทั้งหมดถูกสงวนไว้.</p>
</body>
</html>

หน้าเว็บต่างๆ

@{Layout="Layout.cshtml";}
<h1>ยินดีต้อนรับสู่ CodeW3C.com</h1>
<p>
นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。
นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。
นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。นี่คือข้อความ。
</p>

ทดสอบตัวอย่าง

แยกตัวเอง

ผ่านสองเครื่องมือของ ASP.NET คือ บล็อคเนื้อหาและหน้าติดตั้ง คุณสามารถตั้งแนวทางที่เหมือนเดียวกันสำหรับเว็บแอปพลิเคชั่น

เครื่องมือนี้จะช่วยคุณลดงานออกไปมาก เพราะคุณไม่จำเป็นต้องซ้ำข้อมูลเดียวกันในหน้าต่างๆ รวบรวมทางหลวง สไตล์ และโค้ดเข้ากัน ทำให้เว็บแอปพลิเคชั่นง่ายต่อการจัดการและรักษา

ป้องกันการรั่วไหลรหัสโค้ด

ใน ASP.NET ไฟล์ที่มีชื่อที่เริ่มด้วยข้อความขายหลังไม่สามารถดูผ่าน web ได้

หากคุณต้องการห้ามผู้ใช้ตรวจสอบบล็อคเนื้อหาหรือไฟล์ติดตั้ง โปรดเปลี่ยนชื่อไฟล์

  • _header.cshtm
  • _footer.cshtml
  • _Layout.cshtml

ปิดกั้นข้อมูลที่ละเอียดอ่อน

ใน ASP.NET วิธีที่ใช้บ่อยที่สุดเพื่อปิดกั้นข้อมูลที่ละเอียดอ่อน (รหัสผ่านของฐานข้อมูล รหัสผ่านอีเมล และอื่นๆ) คือจัดเก็บข้อมูลเหล่านั้นในไฟล์ที่มีชื่อว่า "_AppStart" แบบเดี่ยวฝั่ง

_AppStart.cshtml

@{
WebMail.SmtpServer = "mailserver.example.com";
WebMail.EnableSsl = true;
WebMail.UserName = "username@example.com";
WebMail.Password = "your-password";
WebMail.From = "your-name-here@example.com";
}