ASP.NET MVC如何指定View页面所在的文件夹?

Rop*_*tah 38 asp.net-mvc namespaces

默认情况下,ASP.NET MVC引擎在以下文件夹中搜索View页面:

  • / Views/{Controller_Name} /{Action}.aspx
  • / Views/Shared /{Action}.aspx

但是我想把我的一些View页面放在这样:

  • / Views/{Namespace}/{Controller_Name}/{ Action } .aspx

我怎样才能让发动机看起来如此?

Kai*_*ane 65

您可以从控制器操作返回放置在自定义子文件夹中的视图,在return语句中提供完整视图路径,

恩.

public ActionResult Create()
{
    return View("~/Views/ProEnhance/Employee/Create.cshtml");
}
Run Code Online (Sandbox Code Playgroud)

这里,

ProEnhance - 用户定义的文件夹

员工 - 控制器名称

创建 - 操作名称

  • 任何开发者都可以回答@Muflix的问题,上面的答案(Ofigen的回答)发布的内容并没有正确回答.我也在寻找这个问题. (2认同)

Ofi*_*enn 8

您必须创建一个从IViewEngine接口派生的类,并在Global.asax.cs中的Aplication_Start事件中注册此类.检查此链接文本,但与1.0存在一些差异

  • 实际上,我已经阅读了一下,我注意到了VirtualPathProviderViewEngine类.这就是我想要的.谢谢! (2认同)