我在页面上有这个链接
<% = Html.ActionLink(item.Title, "Edit", "ArticleManagement",
new { id = item.ArticleDataID })%>
和接收文章ID的简单方法
public ActionResult Edit(int id)
{
//Do something
}
不幸的是,我收到错误“参数字典包含int32参数id的空值,用于编辑(Int32)...... ”
当我查看网址时,我看到类似“ http://localhost:59786/ArticleManagement/Edit?Length=17 ”的内容
什么是“长度= 17 ”?那里有什么?无论如何,到目前为止,我正在使用一个只有3个项目的集合。
感谢您的帮助
答案 0 :(得分:13)
您需要添加null作为最后一个参数:
<%=Html.ActionLink("Title", "Edit", "ArticleManagement",
new { id = 1 }, new { @class = "link-class", attr = "attribute value" })%>
我认为它使用路由值作为没有null的html属性。
答案 1 :(得分:0)
我也遇到过这种情况,当动作链接无法与路线匹配时,似乎会发生这种情况。
长度17对应于物品管理的长度。
编辑:它可能与ActionLink的重载有关。