天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

也玩MVC3.0 Razor自定義視圖引擎來修改默認的Views目錄結構

剛剛愛上MVC3.0,幾個不眠夜的學習越來越有趣。今天隨手嘗試自定義Mvc3.0的視圖引擎,雖然已成功,但是還發現有點小疑問。隨手貼出來希望大家指教指教。

MVC的視圖文件目錄被固定/Views目錄內,區域視圖文件也是被固定在/Areas目錄下,出于好奇和對目錄名的敏感,嘗試修改它。通過reflector找到視圖引擎的構造接口類VirtualPathProviderViewEngine

在MVC2.0中,自定義自己的視圖引擎,繼承它即可,但在3.0中,我發現繼承它會缺少一個函數。再reflector獲得了BuildManagerViewEngine的抽象類,因為RazorViewEngine繼承的是該抽象類。

所以最直接還是在自己的視圖引擎中繼承它。

public class myViewEngine : BuildManagerViewEngine    {        // Fields        internal static readonly string ViewStartFileName = "_ViewStart";        // Methods        public myViewEngine()            : this(null)        {        }        public myViewEngine(IViewPageActivator viewPageActivator)            : base(viewPageActivator)        {            base.AreaViewLocationFormats = new string[] { "~/Areas/{2}/Views/{1}/{0}.cshtml", "~/Areas/{2}/Views/{1}/{0}.vbhtml", "~/Areas/{2}/Views/Shared/{0}.cshtml", "~/Areas/{2}/Views/Shared/{0}.vbhtml" };            base.AreaMasterLocationFormats = new string[] { "~/Areas/{2}/Views/{1}/{0}.cshtml", "~/Areas/{2}/Views/{1}/{0}.vbhtml", "~/Areas/{2}/Views/Shared/{0}.cshtml", "~/Areas/{2}/Views/Shared/{0}.vbhtml" };            base.AreaPartialViewLocationFormats = new string[] { "~/Areas/{2}/Views/{1}/{0}.cshtml", "~/Areas/{2}/Views/{1}/{0}.vbhtml", "~/Areas/{2}/Views/Shared/{0}.cshtml", "~/Areas/{2}/Views/Shared/{0}.vbhtml" };            base.ViewLocationFormats = new string[] { "~/T/{1}/{0}.cshtml",  "~/T/Shared/{0}.cshtml" };            base.MasterLocationFormats = new string[] { "~/T/{1}/{0}.cshtml",  "~/T/Shared/{0}.cshtml" };            base.PartialViewLocationFormats = new string[] { "~/T/{1}/{0}.cshtml",  "~/T/Shared/{0}.cshtml" };            base.FileExtensions = new string[] { "cshtml", "vbhtml" };        }        protected override IView CreatePartialView(ControllerContext controllerContext, string partialPath)        {            string layoutPath = null;            bool runViewStartPages = false;            IEnumerable<string> fileExtensions = base.FileExtensions;            return new RazorView(controllerContext, partialPath, layoutPath, runViewStartPages, fileExtensions, base.ViewPageActivator);        }        protected override IView CreateView(ControllerContext controllerContext, string viewPath, string masterPath)        {            string layoutPath = masterPath;            bool runViewStartPages = true;            IEnumerable<string> fileExtensions = base.FileExtensions;            return new RazorView(controllerContext, viewPath, layoutPath, runViewStartPages, fileExtensions, base.ViewPageActivator);        }    }

NET技術也玩MVC3.0 Razor自定義視圖引擎來修改默認的Views目錄結構,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 年轻的朋友4在线看中文字幕 | 啊…嗯啊好深男男高h文 | 丰满人妻熟女色情A片 | 国产精品高潮呻吟AV久久96 | 国产69TV精品久久久久99 | 特黄特黄aaaa级毛片免费看 | 亚洲日本香蕉视频观看视频 | 日韩精品无码视频一区二区蜜桃 | 国产欧美日韩网站 | 国产精品一区二区制服丝袜 | 天天色天天综合网 | 24小时日本在线观看片 | 摸董事长的裤裆恋老小说 | 囯产愉拍亚洲精品一区 | 福利视频一二三在线观看 | 挺进老师的紧窄小肉六电影完整版 | 久久在精品线影院精品国产 | 成人影院久久久久久影院 | 色欲AV亚洲情无码AV蜜桃 | 伊人久久中文字幕久久cm | 国产精品麻豆高潮刺激A片 国产精品麻豆a在线播放 | 九九精品视频在线播放 | 精品无人区一区二区三区 | 成人国产亚洲欧美成人综合网 | 日本午夜视频在线 | 十分钟免费视频大全在线 | 国产在线观看91精品 | 美女张开腿露尿口给男人亲 | 帅哥男男GV在线1080P | 伊人影院香蕉久在线26 | 亚洲国产精品嫩草影院 | 久久国产乱子伦免费精品 | 欧美肥胖女人bbwbbw视频 | 久久高清一本无码 | 精品伊人久久久 | 99久久人妻无码精品系列性欧美 | 欲香欲色天天天综合和网 | 亚洲成熟人网站 | 肉动漫无码无删减在线观看 | 我的美女房东未删减版免费观看 | 国产精品一国产精品免费 |