加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – EditorFor / CheckBoxFor boolean将data-val-required属性

发布时间:2020-12-15 08:07:27 所属栏目:百科 来源:网络整理
导读:我的模型类有一个没有Required属性的bool属性: public class Test{ public bool TestBool1 { get; set; }} 然后在我的剃刀视图中我使用EditorFor(同样的事情也发生在CheckBoxFor上): div @Html.LabelFor(m = m.TestBool1) @Html.EditorFor(m = m.TestBool1
我的模型类有一个没有Required属性的bool属性:
public class Test
{        
    public bool TestBool1 { get; set; }
}

然后在我的剃刀视图中我使用EditorFor(同样的事情也发生在CheckBoxFor上):

<div>
    @Html.LabelFor(m => m.TestBool1)
    @Html.EditorFor(m => m.TestBool1)
</div>

这导致以下HTML:

<div>
    <label for="TestBool1">TestBool1</label>
    <input class="check-box" data-val="true" data-val-required="The TestBool1 field is required." id="TestBool1" name="TestBool1" type="checkbox" value="true">
    <input name="TestBool1" type="hidden" value="false">
</div>

data-val-required html属性来自哪里?

有没有办法阻止它这样做而不使用@ Html.CheckBox(“TestBool1”,Model.TestBool1)并将类型设置为bool ??

解决方法

从这个答案 Data annotations,why does boolean prop.IsRequired always equal true

DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;

Add this to your application_start. By default MVC adds [Required] to non-nullable value types (because you can’t convert null into a bool,it must be a bool?)

你可以防止它发生,但因为你总是发送bool(真或假)我通常会离开它

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读