我們有一個網站,涉及藝術家和場地,我們正在開發ASP.net MVC。ASP.Net MVC路由動作名稱衝突
我們有一個文件夾中的藝術家的意見(查看/藝術家/ ..),一個ArtistsController,ArtistsRepository並堅持REST動作名稱,如顯示,新建,刪除等
當我們第一次嘲笑了我們的測試網址是/ artists/Show/1209 ,但我們需要更改此設置,以便網站顯示爲/ artists/Madonna和/ artists/Foo-Fighters等。
但是, ,我們如何區分有效的藝術家名稱和該控制器的動作名稱?例如,藝術家/ PostComment或藝術家/ DeleteComment?我需要允許路由來處理這個。我們的默認顯示路線是:解決此
routes.MapRoute(
"ArtistDefault",
"artists/{artistName}",
new { controller = "Artists", action = "Show", artistName = ""}
的方法之一是爲我們的網站在視覺上運行/藝術家,但有我們的控制器改名爲奇 - ArtistController - 而不是ArtistsController。這會違揹我們在開始時所使用的命名約定(但嘿!)。
您有任何其他建議嗎?如果可能的話,我們也可以根據動詞路由(所以PostComment將會是一個POST,所以我們也許可以轉到那個動作),但我不確定這是否可取,更不用說可能。
謝謝