Performans İçin Kullanılmayan View Engine’leri Devre Dışı Bırakmak

ASP.NET MVC caching konusunda Partial, View ve Display/Editor Template leri açısından genel olarak oldukça iyidir. Fakat eğer ASP.NET MVC projeniz içerisinde sadece tek türde View Engine kullanıyorsanız, diğer kullanılmayan View Engine’leri devre dışı bırakmak performans açısından yapılması gereken işlemlerden birisidir.
Html.EditorFor, Html.DisplayFor gibi model based Helper’ları View’ler içerisinde kullanıyorsanız, ilgili Helper, HTML markup ı olarak oluşturulmadan önce tüm View Engine’leri kontrol ederek bir HTML markup a çevirecek bir template aranmaktadır. Ne kadar fazla View Engine’niniz varsa bu işlem o kadar uzun sürecektir.

Ne yapmalıyız bunun için?
global.asax dosyası içerisindeki Application_Start metotunun içerisine aşağıdaki kodu yazıyoruz:
ViewEngines.Engines.Clear();
ViewEngines.Engines.Add(new RazorViewEngine());

Projede Kaç Tane View Engine Var? Gerçekten Tüm View Engine’lere Bakılıyor Mu?
global.asax içerisindeki Application_Start metotunun son satırına break point koyup, default olarak oluşturulan Visual Studio 2012 ile bir ASP.NET MVC 4 Basit Template projesinde kaç adet View Engine
var inceliyoruz:
global_asax_view_engines_count_webformviewengine_razorviewengine

Projemize sadece Home adında bir controller ekleyelim ve projeyi çalıştırdığımızda hem .aspx li
dosyalara hem de .cshtml / .vbhtml türünde index veya master/layout lara baktığını göreceğiz:

index_bulunamadi_view_engine_asp_net_4

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google fotoğrafı

Google hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s