01.01. Razor Pages : Sözdizimi -> C#

Bu bölümde Razor Sayfaları (cshtml uzantılı sayfalar) içinde C# kullanarak yapılabilecek işlemlere ve sözdizimine ayrılmıştır. 

01.01.01. Sözdizimi ve değişkenler

@ işaretinden ve kullanımdan bir önceki bölümde bahsetmiştik. Şimdi basit bir örnek ile açıklayalım.

Çıktı:

var değişkeni çok esnek bir değişkendir. Herhangi bir veri tipini içine alabilir. Ancak, bu esnek kullanım ufak performans gideri oluşturabilir. C# klasik değişkenlerini de kullanmak mümkündür.

Çıktı:

Özet olarak:

  • Değişkenler veri depolamak için kullanılır.
  • Değişken alfabetik karakter ile başlamalı ve boşluk veya özel karakterler içermemelidir.
  • Değişkenler var anahtar sözcüğü veya tipi ile tanımlanır. ASP.Net veri tipi otomatik olarak tanımlayabilir.
  • var ile tanımlanan Her değişken ilk aldığı değere göre şekillenir. Örneğin ilk string bir  ifade aldıysa değişken türü string olur.
  • int, float, decimal, bool, string veri tipleri kullanılabilir.
  • =,+,+=,-,*gibi operatörlerin kullanım şekli bildiğimiz gibidir.
  • Veri çevrimi yapmak için AsInt(), IsInt(), AsFloat(), IsFloat(), AsDecimal(), IsDecimal(), AsDateTime(), IsDateTime(), AsBool(), IsBool()metotları kullanılabilir.

01.01.02. Döngüler ve array

Basit bir örnek üzerinden açıklayalım.

Çıktı:

İlk for döngüsü 10-13 arasındaki sayıların başına “Satır” ekler. İkinci döngü while ise 1 ile 3 arasında sayıların başına “Satır” ekler. Döngü kullanımı Java, PHP, C gibi diğer dillere çok benzerdir. Önemli nokta @ ifadesini doğru bir şekilde kullanmaktır. Son örnek bir dizi ve o dizi üzerinde yapılacak standart işlemlere ayrılmıştır. Bu örnekte Foreach döngüsü kullanılmıştır.

01.02.03. if, else if, else ve switch

Yine basit bir örnekle başlayalım.

Daha öncede belirtiğimiz gibi @ ifadesinin kullanımı son derece önemlidir. Şimdi de basit bir switch case örneği yapalım.

01.02.04. using

C# bir using ifadesi bir nesnenin bitirildiğinden emin olmak için kullanılır. Örneğin standart bir Veritabanı işleminde connetion open olduktan sonra kapanmasından emin olmak için using bölümüne yazılır. close işlemi yapılmasa da using bittiğinde close gerçekleşir. Benzer bir mekanizma razor içine de kurulmuştur. Örnek olarak HTML Helper kullanıp sunucu tarafında bir form yaratacağız.

Çıktısı:

form action özelliği, method özelliği otomatik olarak yazılmıştır. Ayrıca güvelik amaçlı __RequestVerificationToken isminde bir input eklenmiştir. Dikkat edilişe form kapatılmamasına rağmen kapatma işlemi otomatik yapılmıştır.

01.02.05. try, catch, finally

C# kullanımına çok benzerdir.

throw ile bir hata tetiklendi. catch ile hata yakandı ve ex içindeki Message gösterildi. Finally ise her durumda çalışan bir bölüm olarak çalıştı.

 01.02.06. @lock

Razor kritik bölümleri kilit ifadelerle koruma yeteneğine sahiptir.

 01.02.06. Yorum yazma

Hem C# hem de HTML taraflı yorumu destekler. Örneğin:

Burada dikkat etmeniz gereken bölüm C# bölümü ile HTML bölümünü birbirinden ayırmanızdır. Ayrıca Razor @* *@ ifadeleriniz arasına yazılan hiç bir kodu veya metni yorumlamaz. Örneğin: