2017-02-26 77 views
-1

我正在將我的頭從ActionLink傳遞給控制器​​中的ActionMethod。控制器沒有從ActionLink獲取參數值 - MVC 5.2

我在PartialView中有一個ActionLink。此部分視圖使用_Layout.cshtml中的ExtentionMethod RenderAction呈現。我希望ActionLink將一個參數傳遞給控制器​​ActionMethod,該ActionMethod獲取null以及相關的重載版本的ActionLink。

我的路線默認值是

routes.MapRoute(
     name: "Default", 
     url: "{controller}/{action}/{id}", 
     defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } 
    ); 

我ActionMethod是

[Authorize] 
[ActionName("UpdateUser")] 
public ActionResult UpdateUserGet(string id) 
{ 
    //var User = cRUDUser 

中的RenderAction是_LayoutPage

Html.RenderAction("UserManagerPartial", "Home", new { CT = Content.Value }); 

最後,ActionLink的在UserManagerPartial是

@Html.ActionLink("View Profile", "UpdateUser", "Home", new { id = Model.UserId }, new { @class = "btn btn-primary btn-sm active" }) 
+0

你確定model.userid是否返回值? – Usman

+0

當鼠標懸停在鏈接上時,是否在瀏覽器的狀態欄中顯示正確的URL? –

+0

這是你需要的嗎? http://stackoverflow.com/questions/14152575/pass-parameter-to-controller-from-html-actionlink-mvc-4 –

回答

0

從@ Usman的評論中發現問題出在另一邊。通常,我在渲染局部視圖之前清除了幾個實體。所以,基本上Model沒有id值,但是null。如果您稍後閱讀此內容,請檢查模型中的所有值。

相關問題