这是我第一次尝试使用MVC应用程序。
我正在显示一个数据网格,某些字段可以为空。每列都有一个actionlink,允许用户过滤该数据的页面。不幸的是,我无法弄清楚如何处理'价值不能为空或空。参数名称:linkText'当我有一个空字段时发生错误。
对于动作链接,DisplayFormat似乎被忽略了吗?
[DisplayFormat(DataFormatString = "'{0}'", NullDisplayText = "'Unknown Initials'")]
public string initials { get; set; }
@foreach (var item in Model)
{
<tr>
<td>
@Html.ActionLink(item.Name.initials, "Index", new { i = item.Name.initials })
</td>
答案 0 :(得分:3)
[DisplayFormat(DataFormatString = "'{0}'", NullDisplayText = "'Unknown Initials'")]
public string initials { get; set; }
@foreach (var item in Model)
{
<tr>
if(String.IsNullOrEmpty(item.Name.initials)
{
<td>
@Html.ActionLink("Unknown Initials", "Index", new { i = "Unknown Initials" })
</td>
}
else
{
<td>
@Html.ActionLink(item.Name.initials, "Index", new { i = item.Name.initials })
</td>
}
</tr>
}
答案 1 :(得分:1)
看起来initials
属性为null或为空,这是不允许的。在这种情况下,您可以使用锚文本的默认值:
@Html.ActionLink(item.Name.initials ?? "->", "Index", new { i = item.Name.initials })