ekrem özer

her yerde olan şeyler.

MVC'de Değişken Tanımlama

Merhaba arkadaşlar bu yazımda mvc’de daha doğrusu Razor View Engine’de değişken tanımlama ve kullanımını bir kaç basit örnek ile anlatacağım. Değişken tanımlamak için var veri tipi kullanılabilir. Bildiğiniz gibi var veri tipine istediğimiz tipte veri saklayabiliyoruz(int, string, datetime vs..) Razor tarafında da C# ta geçerli olan değişken tanımlama kuralları geçerlidir örneğin büyük küçük harf farklılıklarını algılar var Sayi=1; olarak tanımladığınız bir değişkeni başka yerde @sayi; olarak kullanamazsınız. Değişken tanımlamaya örnek verecek olursak;

@{var bugun=DateTime.Now;}

Yukarıda bugün adında bir değişken tanımladım ve değer olarak da bugünün tarihini atadım. Değişkeni sayfanın içinde her hangi bir yerde kullanmak istersem, aşağıdaki gibi belirtmem yeterli olacaktır.

@bugun

Razor’da string türünden bir değişken tanımlarken ve kullanırken dikkat etmemiz gereken bazı noktalar vardır. Örneğin var tipinde bir değişkene string değer tanımlayacaksak " " (çift tırnak) karakterlerinin arasında yazmamız gerekir. Örnek olarak;

@{var isim="Ekrem ÖZER";}

Eğer değişkende atadığımız değerin içinde de çift tırnak kullanmamız gerekirse değişkenin önüne @ işareti koyarak çift tırnağı iki kez yazmamız gerekir, yan yana yazılan çift tırnaklar ön tarafa tek sefer yazılmış gibi çıkacaktır. Yukarıdaki yaptığım tanımlamada soy adımı tırnak içinde yazmak isteseydim değişkeni aşağıdaki şekilde tanımlamam gerekecekti;

@{var isim = @"Ekrem ""ÖZER""";}

Çift tırnak gibi ters slash ı kullanmak içinde @ işaretini kullanmamız gerekecektir. Ben var türünden bir değişkene string türünde dizin atamak istersem aşağıdaki şekilde tanımlamam gerekecektir.

@{var dizin = @"\img\logo.png";}

Son olarak da sayfamda hiç bir değişkene atamadan @ işaretini kullanmak istersem örneğin sayfamda mail adresimi yazmak istersem @ işaretini aşağıdaki gibi iki kez yazmam gerekecektir.

ekrem@@ozer.com

Bu yazımda Razor View Engine’de değişken tanımlamadan bahsettim umarım faydalı olmuştur.