2012-02-06 60 views
0

我試圖找出一個簡單創建一個超鏈接(或者通過使用Html.ActionLink或純超鏈接標記)來調用特定控制器操作,並通過在一個用戶id超鏈接調用動作方法

在有一個索引操作的控制器。我在另一個不相關的視圖中有一個超鏈接,我需要所有該控制器的索引操作,並傳入操作方法中param的userId。

更新:

Html.ActionLink("Test Something", "Index", "Tests", new { @userId = @Model.User.UserId }, null) 

這是什麼,我試過一個例子。問題是,它沒有顯示測試/ url中,當我運行

回答

3

期間moue過的網址,您可以在應用程序中的任何地方使用ActionLink helper從任何觀點:

@Html.ActionLink(
    "call index",   // linkText 
    "index",     // action 
    "home",     // controller 
    new { userid = "123" }, // routeValue 
    null      // htmlAttributes 
) 

假設默認路由這應該產生:

<a href="/?userid=123">call index</a> 
+0

你的第二個假設你在主頁上調用主頁的索引操作方法? – PositiveGuy 2012-02-06 21:25:47

+0

@CoffeeAddict,不,它不會假設任何這樣的事情。您可以在應用程序中的任何視圖中使用此幫助程序,並且它會生成此標記(假設默認路由設置爲 - 默認路由看起來像這個「{controller}/{action}/{id}」,並且如果未指定controller它會回到'Home',如果沒有指定動作,則會回到'Index')。 – 2012-02-06 21:28:46

+0

問題是,當鏈接呈現與您的建議,我把鼠標放在它,它只顯示我的相同視圖的網址。它不顯示我測試/ – PositiveGuy 2012-02-06 21:40:30