我是Asp.net MVC的新手。我想以这种方式创建Model的某个对象的超链接
Mapper.Initialize()
现在如图所示,当我点击浏览器中的链接时,它应该移动到具有department.Id路由值的员工控制器的索引操作。但是当我单击该链接时,它会传递一个空路由值,但在URL中,它显示正确的值。为什么会这样?有什么帮助吗?
这是员工控制器中的索引操作
<ul>@foreach(Department department in @Model )
{
<li>@Html.ActionLink(department.Name, "Index", "Employee", new {departmentid= department.Id },null)</li>
} </ul>
答案 0 :(得分:6)
你的行动召唤错误。匿名对象(new {departmentid= department.Id }
)中的名称和参数名称必须匹配。将departmentid
更改为id
(因为您的操作需要名为id Index(int id)
的参数):
@Html.ActionLink(department.Name, "Index", "Employee", new {id= department.Id },null)