为什么Html.TextBoxFor和Html.LabelFor显示不同的值?

时间:2013-07-12 10:39:41

标签: asp.net-mvc asp.net-mvc-4 html.textboxfor

在我的下面的视图中为什么我在标签中获得文本“name”和文本框中的名称值?

    @model IEnumerable<string>

    @foreach(var names in Model)
    {
        <div class="label">@Html.LabelFor(m=>names)</div>
        <div class="input-block-level">@Html.TextBoxFor(m=>names)</div>
        <br/>
    }

如果我运行此操作,我会在浏览器中获得以下视图

enter image description here

1 个答案:

答案 0 :(得分:3)

Html.LabelFor从模型属性中读取元数据并显示属性的名称。 您可以使用DisplayDisplayName属性配置显示的名称。 您的模型没有属性,因此LabelFor在您的示例中完全没用。

你想要达到什么目的? 如果要使用字符串的值呈现标签,只需创建标签:

<label>@names</label>