为mvc4视图引擎添加文件夹以查找视图

时间:2013-01-25 17:23:26

标签: asp.net-mvc asp.net-mvc-4 asp.net-mvc-views

我正在使用MVC4并希望为视图引擎设置自定义位置以查找视图。目前它只会查看它希望视图存在的文件夹之外的Shared文件夹。

我想再添加2个文件夹位置来查找视图。如何在mvc4中实现?我不想操纵它目前的工作方式,只需添加额外的文件夹即可查看。

注意:我已经使用基于请求设备呈现视图的显示模式 - 我不希望通过我的更改来影响这一点。

1 个答案:

答案 0 :(得分:2)

使用此代码

  public class CustomViewEngine : WebFormViewEngine
    {
        public CustomViewEngine()
        {
            var viewLocations =  new[] {  
                "~/Views/{1}/{0}.aspx",  
                "~/Views/{1}/{0}.ascx",  
                "~/Views/Shared/{0}.aspx",  
                "~/Views/Shared/{0}.ascx",  
                "~/AnotherPath/Views/{0}.ascx"
                // etc
            };

            this.PartialViewLocationFormats = viewLocations;
            this.ViewLocationFormats = viewLocations;
        }
    }