html.editorfor 隐藏,c# – Html.EditorFor()不支持数据注释

我有一个具有以下属性的模型:

[Required]

[HiddenInput(DisplayValue = false)]

public override int Id { get; set;}

现在,我的理解是,在呈现属性时,html助手应该遵循这些数据注释属性.但是,当我这样做

@Html.EditorFor(m => m.Id)

生成以下html:

我希望隐藏这个字段,但事实并非如此.我找到了另一个支持注释属性的助手:

@Html.Editor("Id")

由此产生的html将字段设置为隐藏,因为它应该是:

据我所知,两个助手都来自命名空间System.Web.Mvc.Html,两者的实现都来自System.Web.Mvc Assembly,版本5.2.3.0.

我想使用@ Html.EditorFor()方法,但我还需要数据注释.

欢迎所有想法

解决方法:

由@JakubJankowski在评论中解决. @ Html.EditorFor()不支持覆盖属性上的数据注释.

标签:c,asp-net,asp-net-mvc,razor

来源: https://codeday.me/bug/20190701/1352100.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值