【问题标题】:Help with naming my admin related controllers帮助命名我的管理员相关控制器
【发布时间】:2009-10-02 19:13:28
【问题描述】:

我无法为与管理相关的控制器起一个好听的名字。

我有一个用于站点的 UserController(非管理员相关操作)。现在我创建了一个具有以下 url 格式的 ADMIN 部分:

www.example.com/admin/{controller}/{action}/{id}

我的控制器文件夹布局如下:

/控制器/ /控制器/管理员/管理员控制器 /控制器/用户控制器

我需要制作一个控制器来编辑/删除/列出用户,以便对他们执行与管理员相关的操作。

我将把这个控制器放在我的 /controllers/admin/ 文件夹中,只是为了让它们分开。

我应该给这个控制器起什么名字?

我不想做 AdminUserController

因为它看起来很傻,任何帮助!?

【问题讨论】:

    标签: asp.net-mvc naming-conventions controllers


    【解决方案1】:

    您可以将它们放在 YourProject.Controllers.Admin 命名空间中。

    或者,如果它只是用于“url”目的,您可以为这些控制器创建特定的路由,即

    routes.MapRoute("/admin/users/{action}/{id}", new { controller = "AdminUser" });
    

    【讨论】:

      【解决方案2】:

      AdminActionsController?

      您是否有理由不希望它们出现在您的 AdminController 中?所有这些行为似乎都属于这一类。

      编辑:那么 EditController 呢?

      【讨论】:

      • 我不喜欢包含 2 个单词的操作,例如 www.example.com/admin/edituser/342
      • 为什么动作必须是控制器中的两个单词?如果您没有 admin 文件夹,那么您的默认 URL 可能是 /admin/edit/{userId} 或类似的东西。
      【解决方案3】:

      UserManagementController 或者可能是 ManageUserController 或其他类似的东西。

      www.example.com/admin/UserManagement/{action}/{id} www.example.com/admin/ManageUser/{action}/{id}

      【讨论】:

        猜你喜欢
        • 2011-10-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-11-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多