2013-07-05 75 views
0

我一直在試圖拉入參數傳遞到一個頁面,所以我可以將其發佈回上下文。MVC多參數路由

到目前爲止,

 ViewBag.Message = string.Format("{0}::{1}::{2}", 
     RouteData.Values["controller"], 
     RouteData.Values["actions"], 
     RouteData.Values["id"]); 

作品有什麼簡單的,如 「66」 或 「TT」,但任何事情更復雜的像 「?name = blargh?viewId = 66」,它失敗。

我已經嘗試了一堆不同的方式來看看我是否能擊金牌,但似乎沒有任何工作,所以沒有任何人有任何想法我缺少/做錯了/應該不是做?

回答

1

「,但任何事情更復雜的像‘?name = blargh?viewId = 66’,它失敗。

這似乎並不被路由,你應該從獲取信息,但查詢字符串Request.QueryString袋。

如果{id}參數是你的路線的一部分(如缺省路由{controller}/{action}/{id})我希望你明白,這id不可能是任何你喜歡的,只是因爲有規則的URL。例如它不能包含?因爲th符號在url中具有完全不同的含義 - 它代表查詢字符串分隔符。

+0

謝謝,我有新的需要的東西了我失蹤,一旦接受計時器耗盡或週一接受,我會記住這。 – Myzifer

+0

是的,我只是設置它的工作,以防萬一我只需要使用參數,另外你知道我應該能夠進一步瞭解路由和希望一種方法來分離每個查詢的好網站關鍵所以我不會只是產生一個長的url字符串。 – Myzifer