EditorFor / CheckBoxFor boolean将data-val-required属性添加到HTML,而不将必需属性添加到模型中
我的模型类有一个没有Required属性的bool属性:
public class Test { public bool TestBool1 { get; set; } }
然后在我的剃刀视图中我使用EditorFor(同样的事情也发生在CheckBoxFor上):
@Html.LabelFor(m => m.TestBool1) @Html.EditorFor(m => m.TestBool1)
这导致以下HTML:
data-val-required html属性来自哪里?
有没有办法阻止它这样做而不使用@Html.CheckBox("TestBool1", Model.TestBool1)
并将类型设置为bool?
?
从这个答案数据注释,为什么布尔prop.IsRequired始终等于true
DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;
将其添加到您的application_start。 默认情况下,MVC将[Required]添加到不可为空的值类型(因为你不能将null转换为bool,它必须是bool?)
你可以防止它发生,但因为你总是发送bool(真或假)我通常会离开它
上述就是C#学习教程:EditorFor / CheckBoxFor boolean将data-val-required属性添加到HTML,而不将必需属性添加到模型中分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/985194.html