2009-12-01 51 views
0

管理部分在www.example.com/admin組織管理相關的控制器和查看頁面

所以我有一個admincontroller。

但我也有用戶管理相關的控制器,並且配置控制器,我想要的網址是這樣的:

www.example.com/admin - > adminController

www.example.com/admin /用戶/ - > adminUserController www.example.com/admin/user/edit www.example.com/admin/user/add

  1. 我最討厭的名字AdminUserController,有什麼建議?

View頁面被組織,如:

/視圖/管理 /視圖/管理/用戶/

因此在短短手動引用類似的回報查看視圖頁面(「〜/視圖/管理/用戶/添加「);

我還有其他選擇嗎?

回答

4

您可以在同一個項目(在MVC 2)使用多個areas。你可以有一個管理區域。這可以讓您以合理的方式組織所有控制器,並解決命名問題:您在「管理」區域中有一個「UserController」。

1

有控制器之間沒有直接的關係/視圖名稱和物理位置和路線,你可以在Global.asax控制這一點,如果你有一個AdminController您可以定義路由像

example.com/Admin/Manage/ 

在全局將是這樣的:

routes.MapRoute(
       "AdminSection", 
       "Admin/Manage/{action}/{id}", 
       new { controller = "AdminController", action = "Index", id = "" } 
      ); 

所以當進入這樣example.com/Admin/Manage/路由重定向到所需的控制器和行動,在控制器的名稱是不嚴格的一個上路線。 希望它有助於。