.net MVC 区域和子文件夹

Ste*_*hen 1 asp.net-mvc

我在我的项目中使用区域,但我想将这些区域内的视图组织到子文件夹中。

例如,我有一个名为 Members 的区域,其中包含一个名为 Settings 的控制器和另一个名为 MemberCategory 的控制器。MemberCategory 实际上是 Settings 的子文件夹。

我希望当我访问我的 url 的成员类别视图时解析为成员/设置/成员类别

目前它解析为Member/MemberCategory

是否可以将视图嵌套到子文件夹中并将控制器更改为指向

return View("Members/Settings/MemberCategory");
Run Code Online (Sandbox Code Playgroud)

或者这需要通过路由来完成吗?

任何例子将不胜感激。

Ste*_*hen 5

我已经用 Routes 解决了这个问题,而不是将视图嵌套到子文件夹中。

在我的区域注册文件中,我在默认路由上方添加了以下内容:

    context.MapRoute(
        "MemberCategory",
        "Members/Settings/MemberCategory",
        new { controller = "MemberCategory", action = "Index" }
    );

    context.MapRoute(
        "MemberCategoryAction",
        "Members/Settings/MemberCategory/{action}/{id}",
        new { controller = "MemberCategory", action = "Index", id = UrlParameter.Optional }
    );
Run Code Online (Sandbox Code Playgroud)

不确定这是否是最优雅的方式,但它适用于我的情况。