我正在研究MVC 3.0应用程序。我有一个来自我的数据库的人员列表,每个人都与数据库中名为area的另一个表有关系。
人DTO
public class Person
{
int PersonId {get; set;}
string Name { get; set;}
int AreaId {get;set;}
}
现在在我的MVC视图中,我想使用actionlinks创建到区域视图的链接,我希望linktext是区域名称,而不是区域Id。我的标记看起来像这样:
@foreach (var item in Model)
{
<tr>
<td>@Html.ActionLink(item.Name, "Edit", new { item.PersonId })</td>
<td>@Html.ActionLink(item.AreaId.ToString(), "ListArea", "Area", new { item.AreaId}, null)</td>
<td>@using (Html.BeginForm("Delete", "Person"))
{
@Html.Hidden("PersonId", item.PersonId)
<input type="submit" value="Delete" />
}
</td>
</tr>
}
这是第二个ActionLink,我想将 item.AreaId.ToString()更改为区域名称。我在想添加一个:
Html.RenderAction("AreaName", "Area", new {item.AreaId})
在动作方法中,我将从数据库中检索区域名称。
我做错了什么?
提前谢谢。
答案 0 :(得分:0)
如果我的理解是正确的,为什么不将操作链接文本更改为获取区域名称,如下所示:
@Html.ActionLink(item.AreaINameToString(), "ListArea", "Area", new { item.AreaName}, null)</td>
此致 Pavan.G