我正在尝试添加一个新的MVC ActionLink,当按下该按钮进入某个动作并绑定到输入参数但它似乎无法正常工作
我有这个:
@Html.ActionLink("OPTIN","Optin", "Admin", new {id = Model.Publications[i].ID})
然后是Admin控制器上的Optin方法:
public ActionResult OptIn(int? id)
{
if (id.HasValue)
{
var temp = id.Value;
}
我想将id映射到输入参数,但它始终为NULL,而Model.Publications [i] .ID始终为5.我做错了什么?我是否必须将ID作为模型的一部分?
答案 0 :(得分:1)
您设置ActionLink
方法的方式是错误的。我谨慎使用您正在使用的覆盖this one。但是,您希望使用的是string, string, string, object, object。
根据您问题评论中的网址,您设置的ID是HTML属性,而不是网址的一部分。
如果您将通话更改为以下内容,则应该为您提供所需内容:
@Html.ActionLink("OPTIN","Optin", "Admin", new {id = Model.Publications[i].ID}, new { })