2015-05-26 60 views
0

我環顧四周,但一直未能找到我的問題的解決方案。任何建議將不勝感激。ASP.NET MVC:Razor ActionLink問題

我的網站有意見;主頁,項目和包裝。

在項目/詳細信息頁面,我創建了下面的鏈接,在這個例子中,通過對項目ID爲第73項:

@Html.ActionLink("Create New", "Packaging/Create", new { id = Model.ItemID }) 

它鏈接到這裏查看項目中:

   http://localhost:52618/Item/Packaging/Create/73 

但是,我想它在包裝查看,而不是鏈接在這裏:

   http://localhost:52618/Packaging/Create/73 

謝謝,

回答

1

不是應該:

@Html.ActionLink("Create New", "Create", "Packaging", null, new { id = Model.ItemID }) 

PARAMS: 1.鏈接文本 2.操作名稱 3.控制器名稱 4.路由值 5. HTML屬性

+0

我們是否有重載作爲'ActionLink(HtmlHelper,String,String,String,Object)'所以它不會工作,只爲記錄​​沒有downvoted – Satpal

0

ActionLink第一個參數的正確過載,是會被調用的方法的名稱,而第二個是控制器的名稱。

你應該做這樣的事情,我認爲

@Html.ActionLink("Create", "Packaging", new { id = Model.ItemID }) 
0

的問題似乎是,你有類似規定的區域。在這種情況下,你需要指定一個像下面的附加參數:

@Html.ActionLink("Create New", "Create", "Packaging", new { area = "", id = model.ItemID}, null) 

我沒有測試的代碼,但它應該是沿着這些路線。指定空白區域將創建指向當前活動區域之外的控制器的鏈接。

+0

'area =「」'將不起作用,因爲區域未定義,但它會因正確的過載而起作用 – Satpal