Makale Özeti

Spark View Engine ile ASP.Net MVC nasıl uygulama geliştirebileceğimiz konu alan makale serisidir.(Söz konusu makale konuya girişi yazısı olma hükümlüğünü taşımaktadır.)

Makale

ASP.Net ile uygulama geliştir iken; ara yüz tasarlama aşamasında, kullandığımız Syntax uzun olması geliştirme süresin uzamasına neden olmaktadır.Özelliklede ASP.Net MVC uygulamalarında bu sorun daha göze çarpmaktadır.Bu gibi durumlar için zaman içinde çeşitli View Engine kütüphaneleri ortaya çıkmıştır. Bu yazının konusu olan Spark View Engine bunlarda birisidir. Aşağıda popüler olarak kullanıla View Engine kütüphaneleri bulunmaktadır.

·         Spark

·         NHaml

·         MonoRail

·         Razor

·         Vb..

Spark View Engine, Apache 2 lisansı sahip ve açık kaynak olarak devam etmektedir. Konu ile ilgili olarak uygulama deneyimizi artırmak için küçük bir uygulama yapalım ve kullanım kolaylıklarında yararlanmaya başlayalım J. Spark View Engine ile ilgili dosyaları burada indirebilirsiniz.Gerekli dosyaları edindikten sonra ASP.Net MVC 2 projesi başlatalım.Spark View Engine özelliklerini projemizde kullanmamız için Spark.dll ve Spark.Web.Mvc.dll projemize referas edelim.

Projemize gerekli referansları ekleme işlemini gerçekleştirdikten sonra, Spark View Engine ile ilgili ayarları yapmaya başlayalım. İlk olarak web.config dosyasında gerekli tanımları yapmamız gerekmektedir. Bu işlem için web.config dosyasına Spark View Engine ile alakalı bir section tanımlayalım.

section.PNG

Gerekli section tanımlamasını yaptıktan sonra; hazırlamış olduğumuz View(.spark) nesnelerinin çalışma zamanında derlenebilmesi ile ilgili olarak gerekli elementi tanımlıyoruz.

spark-compilation-debug.PNG

Kurulum ayalarının son aşaması olarak, Spark View Engine ‘i ViewEngine koleksiyonuna eklememiz gerekmektedir.

Spark-ViewEngine-Registeri.PNG

Yapmış olduğumuz tanımlamalar ile alakalı her hangi sorun olup-olmadığını kontrol etmek amacı ile projemizi çalıştıralım. Proje çalıştığında karşımıza; proje oluşturduğumuzda gelen varsayılan dosyalar gelecektir.

ASP.Net-MVC-Standart-Page.PNG

Şimdi, uygulamamızda kullanmış olduğumuz standart kodu görelim.

ASP.Net-MVC-Standart-Code.PNG

Özellikle resminde seçmiş olduğum alanlar, Spark View Engine de değişikler göstermektedir. Bu açıda bu alanlara dikkat etmemiz gerekmektedir. Uygulamamızı Spark View Engine ile tasarlayarak incelemeye başlayalım. Öncelik ile Spark View Engin ile kullandığımız master sayfa yapısına kısa bir bakalım(ilerleye yazılarımda Master Layout konusunda detaylı olarak incelenecektir.).

Spark-View-Engine-Master.PNG

Yukarıda görmüş olduğunuz resim, Spark View Engine ile kullanmak için hazırlanmış master sayfasıdır. Spark View Engine, kullanımdaki master sayfa tanımda kullanılan ContentPlaceHolder tanımları <use content=””/> şeklinde yapılmaktadır. Göze çarpan bir diğer kullanım şekli ise Usercontrol Render etme şeklidir( <LogUserControl/> ). View içersinde kullanmış olduğumuz fonksiyonları (Htmlhelper) ise “!{ }”  şekliden çağırmaktayız.

Master Sayfayı inceledikten sonra Content sayfasını inceleyelim.

Spark-View-Engine-Page.PNG

Content sayfasında ise kullanıcı ara yüzü tasarladığımız bölüm olarak, master sayfasın içersinde bulunan alanları content(<content name=””/>) şeklide çağırmaktayız. Kullandığımız herhangi bir içerik sayfasında varsayılan master yerine faklı bir master dosyası kullanmak istiyor iseniz <use master=”master adı”/> şeklinde yapacağız tanımlama yeterli olacaktır.

Bu yazımda, Spark view Engine konusuna bir giriş yapmaya amaçlayarak, küçük bir uygulama gerçekleştirdik. Konu ile ilgili sorularınızı info@ibrahimatay.org mail adresi yönetebilirsiniz.

Herkese kolay gelsin.

IBRAHIM ATAY