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
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