2010-03-16 72 views
1

我有一個非常基本的使用默認路由的ASP.NET MVC應用程序。現在我需要使用單個參數將特定URL附帶的所有請求路由到一個操作。沒有控制器和動作名稱的路由

例子:

www.myapp.com/2374982

www.myapp.com/3242342

應該被路由到相同的動作:

public ActionResult ViewById(int id) 

謝謝, Eden

回答

3

只要定義不{}控制器的路線/ {}行動部分

routes.MapRoute("ById", "{id}", new { controller = "Home", action = "ViewById"}, new{id = @"\d+"}); 

最後一個參數是約束,這可確保ID是一個數字。

+0

當然,我確實嘗試了這個簡單的解決方案。它不起作用。我得到了404. 你試過類似的東西嗎? – Eden 2010-03-16 10:48:37

+0

我只是測試它,它的工作原理。 嘗試評論其他路線定義並檢查控制器/操作名稱。 – 2010-03-16 11:29:44

+0

你是對的,它是解決問題的默認路由器.MapRoute。我只需要重新排列它們。 謝謝! – Eden 2010-03-22 12:49:11

相關問題