[英]Asp.net mvc won't take the razor parameter
我正在開發一個學校項目,該項目到目前為止進展順利,但問題終於解決了。
我的家庭控制器中有以下方法:
[HttpPost]
public ActionResult GetSeatsInShow(int showId)
{
...
return View(realSeatList);
}
在我看來,我使用剃刀將參數解析到控制器,並且控制器應在如下地址中返回結果:
http://localhost:1499/Home/GetSeatsInShow/236
如果我在以下URL上的另一個名為Shows的控制器方法上執行此操作,則該操作:
http://localhost:1499/Home/Shows/1
但是我需要在GetSeatsInShow方法上放置?showId =像在下面的代碼片段一樣:
http://localhost:1499/Home/GetSeatsInShow/?showId=236
我的剃須刀ActionLink看起來像這樣:
@Html.ActionLink("Vælg", "GetSeatsInShow", new { id = item.Id })
某些Show方法可以正常工作,但結果與無效的結果相同,似乎找不到問題。
您有幾種選擇。
您當前正在將參數傳遞為id而不是showId,而您的控制器需要一個名為showId的參數。 結果,通過更新匿名類型,您可以傳遞正確的參數名稱。
@Html.ActionLink("Vælg", "GetSeatsInShow", new { showId = item.Id })
另外,您可以簡單地在查詢字符串中傳遞“ id”,並允許默認的MVC綁定起作用,如果更新控制器,這是不可思議的:
@Html.ActionLink("Vælg", "GetSeatsInShow", new { id = item.Id })
[HttpPost]
public ActionResult GetSeatsInShow(int id)
{
...
return View(realSeatList);
}
你可以試試這個
@Html.ActionLink("Vælg", "GetSeatsInShow", new { id = item.Id, showId = item.Id })
你正在服用的輸入showId
在GetSeatsInShow
和剃刀你逝去的id
[HttpPost]
public ActionResult GetSeatsInShow(int id)
{
...
return View(realSeatList);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.