MVC Nested Folder Structure

Bu sefer hızlı bir enstantane geçmek istedim, hem ilk nuget denememizi yapalım hemde son projemizde gerçekten ihtiyacımız olduğunu düşündüğümüz yapısal bir değişikliğe gidelim. Olayımız büyük çaplı bir projede mvc pattern a isyan etmeden ve areaları farklı değerlendirmek sureti ile mevzuya dahil etmemek, ve dolayısı ile halihazırdaki klasör yapısı yeniden yapılandırmak(yani aslında işimize gelecek şekilde bozmak), iç içe sergilemek ve yönetilebilir kılmak…

https://gist.github.com/bbilginn/5258693

Bunun için Application_Start metodunda System.Web.Mvc altında olan ViewEngines class ı ile oynayacağız. ViewEngines.Engines.Add(NestedView.Engine) ile yeni bir Engine ekleyeceğiz. NestedView.Engine metodu New RazorViewEngine return edecek fakat öncesinde ise mevcut yapıyı ViewEngines.Engines.Clear() metotu ile pir-ü pak eyliyoruz. NestedView.Engine’in yaptığı iş Views klasörünün altındaki yapıyı dolaşmak ve bu yapıyı RazorViewEngine tipindeki customEngine değişkeninin ViewLocationFormats, PartialViewLocationFormats ve MasterLocationFormats özelliklerine eklemek

Geldik en keyifli yerine, nuget kurulumu yapacağız. Install-Package Nested-Folder-Structure

Picture

Kurulumdan sonra App_Start klasörüne ViewEngineConfig.vb gelecektir. Bundan sonra ise Global.asax.vb dosyasının 17. satırında görüldüğü üzere Nested View Engine yapımızı ekliyoruz. MVC-Nested-Folder projesinin klasör yapısını incelersek daha iyi fikir sahibi olabiliriz.


http://visualbasictr.com/Article/Berat-Bilgin/mvc-nested-folder-structure