2010-01-19 120 views
1

我想我的網址結構是這樣的:路由器可以添加控制器名稱嗎?與URL和控制器的名稱衝突問題

www.stackoverflow.com/order/... 

www.stackoverflow.com/admin/order/... 

現在,這兩個以上使用不同的控制器。

/controllers/ordercontroller 
/controllers/admin/ordercontroller 

有沒有一種方法,我可以有這個網址結構?

我在想,如果我能做到這一點:

/controllers/ordercontroller 
/controllers/admin/adminordercontroller 

而且,最後在我的路線,前面加上「管理員」所有管理相關的控制器的名字嗎?

回答

2

好的,沒問題。請記住,您也可以在路線中使用靜態文本。

routes.MapRoute("admin", "admin/{controller}/{action}/{id}", .... 

routes.MapRoute("normal", "{controller}/{action}/{id}", ... 

這裏的關鍵是要確保管理員航線是第一,所以它在匹配URL第一次破裂。否則,「正常」路線將吞噬它,因爲它也匹配。

+0

但是管理員相關網址的命名又如何?我希望他們就像/ admin/order /和have/order /在同一時間。我怎樣才能做到這一點? – Blankman 2010-01-19 19:07:26

相關問題