【问题标题】:Finding my View in asp.net mvc在 asp.net mvc 中查找我的视图
【发布时间】:2013-02-28 19:56:37
【问题描述】:

我的 Views 文件夹变大了!我想重新组织它,使 Views 文件夹包含一个 Modules 列表,然后每个 Module 文件夹都包含当前显示在 Views 文件夹下的 View (Controller) 文件夹的共享。

但这当然意味着进入我的每个控制器并编辑每个视图返回方法及其视图的显式位置。

所以不是控制器 Orders.Index 方法只有这个:

return View();

我必须对其进行编辑才能返回:

return View("~/Views/Orders/Index.cshtml");

你可以想象这个练习达到 50 多个控制器的糟糕程度。

有没有什么方法可以让我为每个控制器设置路由或其他东西,告诉控制器的方法在 Views 文件夹的已定义子文件夹中找到他们的视图?

【问题讨论】:

    标签: asp.net-mvc


    【解决方案1】:

    这可以在 CustomViewEngine 的帮助下完成 关注这篇文章,我希望您可以提供自己的位置来定位视图模板。 MVC 提供了一种方式,我们可以轻松地提供要搜索的路径列表

    Locate view

    添加 CustomViewEngine 后,在 Application_Start() 事件中注册它,然后你就完成了 :) 快乐编码

    【讨论】:

      【解决方案2】:

      您可以通过implementing a custom RazorViewEngine 解决此问题,您可以在其中指定每个请求、每个控制器等的视图的搜索路径。

      【讨论】:

        猜你喜欢
        • 2012-03-29
        • 2015-11-12
        • 1970-01-01
        • 2011-07-01
        • 2014-04-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-11
        相关资源
        最近更新 更多