标签标签asp-for未显示

时间:2019-09-01 07:11:32

标签: asp.net-core razor-pages

我有这个ViewModel类

public class ThirdPartyTransfer
{
    public int Id { get; set; }
    [Display(Name = "Transfer Amount")]
    public decimal TransferAmount { get; set; }

}

以及在我的C#剃须刀页面中,ThirdPartyTransfer.cshtml

   <div class="form-group">
    <label asp-for="ThirdPartyTransfer.TransferAmount" />
    <input asp-for="ThirdPartyTransfer.TransferAmount" class="form-control" />
    <span asp-validation-for="ThirdPartyTransfer.TransferAmount" class="text-danger"></span>
</div>

下方显示的是

    <div class="form-group">
    <label for="ThirdPartyTransfer_TransferAmount" />
    <input class="form-control" type="text" data-val="true" data-val-number="The field Transfer Amount must be a number." data-val-required="The Transfer Amount field is required." id="ThirdPartyTransfer_TransferAmount" name="ThirdPartyTransfer.TransferAmount" value="" />
    <span class="text-danger field-validation-valid" data-valmsg-for="ThirdPartyTransfer.TransferAmount" data-valmsg-replace="true"></span>
</div>

我想知道为什么我可以看到文本框但看不到标签。

1 个答案:

答案 0 :(得分:1)

好吧,史蒂夫,您的问题与HTML有关。标签标签不应自动闭合。

将其更改为<label asp-for=""></label>,就可以了!

来自Microsoft文档;

自动关闭标签助手

许多标签助手不能用作自动关闭标签。一些标签助手被设计为自动关闭标签。使用并非设计为自动关闭的Tag Helper会抑制呈现的输出。自闭合标签助手会在呈现的输出中产生自闭合标签。有关更多信息,请参阅this中的Authoring Tag Helpers注释。