ASP.NET Razor Syntax: Nedir, Nasıl Kullanılır?

Başlatan Velku, Nis 08, 2025, 03:10 ÖS

« önceki - sonraki »

Velku

ASP[DOT]NET Razor, Microsoft'un web geliştirme dünyasında sunduğu güçlü ve esnek bir markup dilidir. Razor Syntax, C# kodunu HTML ile birleştirerek dinamik web sayfaları oluşturmayı kolaylaştırır. Hem okunabilir hem de performans odaklı olan bu yapı, geliştiricilere sunucu taraflı kod yazma imkanı tanır. Bu yazıda, ASP[DOT]NET Razor Syntax'in temel özelliklerini, kullanım alanlarını ve pratik kod örneklerini SEO uyumlu bir şekilde ele alacağız. Eğer siz de ASP[DOT]NET ile modern web uygulamaları geliştirmek istiyorsanız, bu rehber tam size göre!

Razor Syntax Nedir?
Razor, ASP[DOT]NET MVC ve ASP[DOT]NET Core gibi framework'lerde kullanılan bir şablon motorudur. C# veya VB[DOT]NET kodlarını HTML içine gömmek için minimalist bir sözdizimi sunar. @ sembolü, Razor'un en ayırt edici özelliğidir ve sunucu taraflı kod ile istemci taraflı HTML arasında geçiş yapmayı sağlar. Bu sayede, kod yazımı hem sade hem de hızlı hale gelir.

Razor'un avantajları şunlardır:
  • Okunabilirlik: Karmaşık kod blokları yerine temiz bir syntax sunar.
  • Esneklik: Küçük projelerden büyük ölçekli uygulamalara kadar her alanda kullanılabilir.
  • Entegrasyon: C# ile tam uyumlu çalışır ve IntelliSense desteği sunar.

Razor Syntax'in Temel Kullanımı
Razor'un temel mantığı, @ sembolü ile C# kodunu HTML içinde çalıştırmaktır. Şimdi adım adım Razor'un nasıl kullanıldığına bakalım:

1. Tek Satırlık İfadeler
Razor ile değişkenleri veya basit ifadeleri doğrudan HTML içinde çağırabilirsiniz.
<p>Mevcut Tarih: @DateTime.Now.ToShortDateString()</p>
Çıktı: Mevcut Tarih: 08.04.2025

2. Kod Blokları
Birden fazla satır içeren C# kodlarını çalıştırmak için @{} yapısını kullanabilirsiniz.
@{
    string userName = "Ali";
    int userAge = 25;
}
<p>Kullanıcı: @userName, Yaş: @userAge</p>

Çıktı: Kullanıcı: Ali, Yaş: 25

3. Koşullu İfadeler
Razor, if-else gibi koşullu ifadeleri HTML ile harmanlamanıza olanak tanır.
@{
    bool isLoggedIn = true;
}
@if (isLoggedIn)
{
    <p>Hoş geldiniz, kullanıcı!</p>
}
else
{
    <p>Lütfen giriş yapın.</p>
}


4. Döngüler
Listeleri veya dizileri işlemek için for, foreach gibi döngüleri kullanabilirsiniz.
@{
    string[] fruits = { "Elma", "Armut", "Muz" };
}
<ul>
    @foreach (var fruit in fruits)
    {
        <li>@fruit</li>
    }
</ul>


Çıktı:
  • Elma
  • Armut
  • Muz

Razor'da HTML ve C#'ı Birleştirme
Razor'un en güçlü yönlerinden biri, HTML ile C#'ı sorunsuz bir şekilde birleştirebilmesidir. Örneğin, bir form oluştururken kullanıcı girişlerini dinamik olarak işleyebilirsiniz:
@{
    string message = "";
    if (IsPost)
    {
        message = "Form gönderildi!";
    }
}
<form method="post">
    <input type="submit" value="Gönder" />
</form>
<p>@message</p>


Bu kod, form gönderildiğinde bir mesaj gösterir. IsPost, Razor'un sayfaya POST isteğiyle gelinip gelinmediğini kontrol eden bir özelliğidir.

SEO Uyumluluğu için Razor Kullanımı
Razor, SEO açısından da oldukça avantajlıdır. Dinamik içerik oluştururken meta etiketleri, başlıklar ve URL'leri özelleştirmek mümkündür. Örneğin:

@{
    ViewBag.Title = "ASP[DOT]NET Razor ile SEO Uyumlu Sayfalar";
    ViewBag.Description = "Razor Syntax ile dinamik ve SEO dostu web sayfaları nasıl oluşturulur öğrenin.";
}
<head>
    <title>@ViewBag.Title</title>
    <meta name="description" content="@ViewBag.Description" />
</head>


Bu yapı, arama motorlarının sayfanızı daha iyi anlamasını sağlar.

Razor'da Yaygın Kullanılan Yöntemler
  • Html Helpers: HTML elemanlarını dinamik olarak oluşturmak için kullanılır.

    @Html.TextBox("userName", "Varsayılan İsim")
  • Partial Views: Tekrarlanan kod bloklarını ayırmak için idealdir.

    @Html.Partial("_Header")
  • Model Kullanımı: Veritabanından gelen verileri işlemek için @model direktifi kullanılır.

    @model List<Product>
    <ul>
        @foreach (var product in Model)
        {
            <li>@product.Name - @product.Price TL</li>
        }
    </ul>

Neden Razor Kullanmalısınız?
  • Hızlı Geliştirme: Kod ve markup'ı bir arada tutarak zaman kazandırır.
  • Bakım Kolaylığı: Temiz syntax sayesinde kod okunabilirliği artar.
  • Topluluk Desteği: ASP[DOT]NET ekosistemiyle tam uyumlu çalışır.

Sonuç
ASP[DOT]NET Razor Syntax, modern web geliştirme süreçlerinde vazgeçilmez bir araçtır. Hem yeni başlayanlar hem de deneyimli geliştiriciler için öğrenmesi kolay ve uygulaması keyifli bir yapı sunar. Yukarıdaki kod örnekleriyle Razor'un temel özelliklerini keşfedebilir, projelerinizde hemen kullanmaya başlayabilirsiniz. SEO uyumlu, kullanıcı dostu ve performanslı web sayfaları oluşturmak için Razor'u tercih ederek bir adım önde olabilirsiniz!