zoukankan      html  css  js  c++  java
  • Asp.net MVC 3中修改views 目录{转,增}

    1. RazorViewEngine 的构造函数

    public RazorViewEngine(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[] { "~/Views/{1}/{0}.cshtml""~/Views/{1}/{0}.vbhtml""~/Views/Shared/{0}.cshtml""~/Views/Shared/{0}.vbhtml" };
        base.MasterLocationFormats = new string[] { "~/Views/{1}/{0}.cshtml""~/Views/{1}/{0}.vbhtml""~/Views/Shared/{0}.cshtml""~/Views/Shared/{0}.vbhtml" };
        base.PartialViewLocationFormats = new string[] { "~/Views/{1}/{0}.cshtml""~/Views/{1}/{0}.vbhtml""~/Views/Shared/{0}.cshtml""~/Views/Shared/{0}.vbhtml" };
        base.FileExtensions = new string[] { "cshtml""vbhtml" };
    }

    2. 继承RazorViewEngine修改类定义

    public class TestViewEngine : RazorViewEngine
    {
        public TestViewEngine()
        {
            MasterLocationFormats = new[] {
                "~/TestViews/{1}/{0}.master",
                "~/TestViews/Shared/{0}.master"
            };
            ViewLocationFormats = new[] {
                "~/TestViews/{1}/{0}.cshtml",
                "~/TestViews/{1}/{0}.cshtml",
                "~/TestViews/Shared/{0}.cshtml",
                "~/TestViews/Shared/{0}.cshtml"
            };
            PartialViewLocationFormats = ViewLocationFormats;
            MasterLocationFormats = MasterLocationFormats;
        }
    }

    3. 在需要修改View路径的方法内调用如下代码:

    ViewEngines.Engines.Clear();
    ViewEngines.Engines.Add(new WebFormViewEngine());
    如果没有调用ViewEngines.Engines.Clear();将会多个路径共存。
    如果需要自定义配置路径,只需要将自定义的类中的路径从配置文件或者数据库中读取即可。
  • 相关阅读:
    iOS拓展---[转载]视频相关,一定要看呀
    iOS拓展---碰到奇葩需求
    iOS拓展---【转载】成熟的夜间模式解决方案
    2018年度总结
    linux常用命令
    自我认识
    SpringBoot入门最详细教程
    SVN分支的合并和同步
    java Data、String、Long三种日期类型之间的相互转换
    徐胜治:我要留下真正的东西
  • 原文地址:https://www.cnblogs.com/answercard/p/2284420.html
Copyright © 2011-2022 走看看