下面的表位于名为Student (/Student/Details/1)的控制器中的视图中:
@foreach (var item in Model.Enrollments)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.Course.Title)
</td>
<td>
@Html.DisplayFor(modelItem => item.Grade)
</td>
</tr>
}
我想将每个表定义放到一个链接中,该链接将我带到名为Course (/Course/Details/1)的控制器中的一个视图。
我尝试过的东西大致如下:
@Html.ActionLink(Html.DisplayFor(modelItem => item.Course.Title, "Details", "Course"))
代替
@Html.DisplayFor(modelItem => item.Course.Title)
它不能编译。如何适当地显示模型的标题以及指向引用标题的详细信息的链接?
发布于 2012-03-06 21:39:36
如果我没理解错你的问题,你想要一个与课程文本的链接。
这应该是可行的:
@Html.ActionLink(item.Course.Title, "Details", "Course")
如果您想要将课程的ID传递给控制器(假设您的路由规则设置正确,并且Id类似于: item.Course.Id)
@Html.ActionLink(item.Course.Title, "Details", "Course", new { Id = item.Course.Id }, null /* html attributes */)
如果需要在属性上使用UIHint属性来添加额外的格式设置,则可以使用以下命令
<a href="@Url.Action("Details", "Course", new { Id=item.Course.Id})">@Html.DisplayFor(modelItem => item.Course.Title)</a>
发布于 2012-03-06 21:38:51
你在Html.DisplayFor(modelItem => item.Course.Title
之后忘了一个)
。
也许试着给它添加一个.ToString()
可能会有所帮助。
发布于 2017-07-20 15:29:20
// you want to use link with the displaying a course. you can use.
<a href = "@url.action("Details","course",new {Id = item.Course.Id}
@html.displayfor(m => m.Course.Title)</a>
// second approach
@Html.ActionLink(item.Course.Title, "Details", "Course", new { Id = item.Course.Id })
https://stackoverflow.com/questions/9584673
复制相似问题