我有一些問題,我的網址看看經歷類別一會兒。.NET MVC分類樹URL結構
基本上,這是某種形式的餐飲應用,其中用戶選擇Town
(最高類別),然後選擇Restaurant
爲town
,和裏面restaurant
他可以看到food
。
我有TownViewController
,RestaurantViewController
,FoodViewController
和用於處理的Town
,Restaurant
表示主要動作,Food
是View
(所以在每一個控制器)。
,看我有www.catering.com/Town
所有城鎮和多數民衆贊成罰款(雖然這將是更好的,如果不重命名控制器到城鎮,也沒有硬編碼新航線的/城鎮 - 如果可能的話)
要查看所有餐館選擇鎮(駐這個案例ID = 1)我有www.catering.com/Restaurant/View/1
。現在這是問題。實際上這應該是選擇餐廳和食物代表的路線,餐館代表應該是www.catering.com/Town/View/1
。所以實際上總是超類應該在URL中。
因爲在最後我有www.catering.com/Food/View/1
並沒有任何意義,因爲我正在瀏覽餐廳沒有與ID = 1的食物。
是否有某種方式這可以是固定的路線,除了經典的硬編碼?我設法解決了一些硬編碼路由,但是我的客戶說它不是很好的方法,因爲它可能會在較大的項目中變得非常混亂。
我做這樣的:
routes.MapRoute(
"Restaurant",
"Town/View/{id}",
new { controller = "Restaurant", action = "View", id = UrlParameter.Optional }
);
routes.MapRoute(
"Food",
"Restaurant/View/{id}",
new { controller = "Food", action = "View", id = UrlParameter.Optional }
);
謝謝你的回答,我會盡快檢查一下我的電腦。 –