Layout ve Razor View Engine
Web Programlama 2 - Ünite 3: Sunum Katmanı Mimarisi
Sunum Katmanını Organize Etmek
Bu ünite, web uygulamasının "Sunum Katmanı"nı (Presentation Layer) nasıl organize edeceğimizi ve statik HTML yapılarını dinamik C# kodlarıyla nasıl harmanlayacağımızı öğretir. DRY (Kendini Tekrar Etme) prensibi üzerine kuruludur.
Layout (Düzen) Mimarisi
Temel Sorun ve Çözüm
Her sayfada menü ve footer kodlarını tekrar yazmak DRY prensibine aykırıdır. Layout, uygulamanın değişmeyen iskeletidir.
-
Konum
Genellikle
Views/Shared/_Layout.cshtmlyolunda bulunur. -
@RenderBody()
Layout içindeki bu metot, "Değişen içeriği (View) tam buraya koy" emridir.
-
_ViewStart.cshtml
Tüm sayfaların varsayılan olarak hangi Layout'u kullanacağını otomatik bildirir.
(Buraya İletişim, Hakkımızda vs. gelir)
Razor View Engine
HTML ile C# kodunu birleştiren motordur. Geçiş anahtarı @ sembolüdür.
Tek Satır Kod
HTML içinde değişken yazdırma.
Kod Bloğu
Çok satırlı C# işlemleri.
var isim = "Ali";
var yas = 20;
}
Gizli Yorumlar
Kullanıcıya gönderilmez.
Koşullu İfadeler (If-Else)
Karar Mekanizması
Standart C# if-else ve switch yapıları kullanılır. HTML çıktısı şarta göre değişir.
{
<p class="text-green">Geçti</p>
}
else
{
<p class="text-red">Kaldı</p>
}
Döngüler (Loops)
Foreach (En Popüler)
Bir listenin (koleksiyonun) eleman sayısı kadar döner. Hata riski azdır.
For
Döngü sayısı kesin bilindiğinde (indeks tabanlı) kullanılır.
While / Do-While
Koşul doğru olduğu sürece döner. Do-While en az 1 kez çalışır.
<ul> <!-- HTML Listesi Başlangıcı --> @foreach (var isim in OgrenciListesi) { // Her isim için bir madde üretilir <li> @isim </li> } </ul>
• Mehmet
• Ayşe
Hiç yorum yok:
Yorum Gönder