使用@Html.ActionLink时如何处理'Value cannot be null or empty'?

How to handle 'Value cannot be null or empty' when using @Html.ActionLink?

这是我第一次尝试 MVC 应用程序。

我正在显示一个数据网格,其中一些字段可以为空。每列都有一个操作链接,允许用户根据该数据过滤页面。不幸的是,我不知道如何处理当我有一个空字段时发生的 'Value cannot be null or empty. Parameter name: 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>

看起来 initials 属性 为 null 或空,这是不允许的。在这种情况下,您可以为锚文本使用默认值:

@Html.ActionLink(item.Name.initials ?? "->", "Index", new { i = item.Name.initials })
        [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>
}