繁体   English   中英

传递MVC模型的列名称以在HTML.ActionLink()帮助器中显示的方法

[英]Ways to pass MVC model's column name to display in HTML.ActionLink() helper

我可能忽略了一些简单的事情,但是我无法通过谷歌搜索找到答案。

这是原始代码段:

<tr>
        <th>
            @Html.DisplayNameFor(model => model.UserName)
        </th>
</tr>

我想用Html.ActionLink()替换Html.DisplayNameFor() Html.ActionLink()以启用列排序。

一种方法是简单地如下硬编码:

@Html.ActionLink("User Name", "Index", new { sortOrder = ViewBag.NameSortParm}) 

但是,我想用模型类中的实际字段名称替换文字“用户名”,并利用我在模型中定义的自定义显示属性。

关于如何将模型的字段名称检索为字符串变量的任何提示?

@Html.ActionLink(
    Html.DisplayNameFor(model => model.UserName).ToString(),
    "Index",
    new {
        sortOrder = ViewBag.NameSortParm
    }
)

DisplayNameFor方法返回可以在其上使用.ToString()方法的MvcHtmlString(即使没有它也可以使用)。 只需将其用作链接文本即可。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM