2013-02-15 101 views
3

模型Asp.Net Mvc复选框的默认值?

[DefaultValue(true)] 
public bool IsActive { get; set; } 

视图

@Html.CheckBoxFor(model => model.IsActive) 

HTML输出和我的预期

<input data-val="true" data-val-required="Yayında alanı boş bırakılmamalıdır!" id="IsActive" name="IsActive" type="checkbox" value="true" class="valid"> 

,但没有被选中复选框。我不明白为什么?我错过了什么?

谢谢。

+0

的“最佳实践”,在这种情况下,IMHO,是设置在控制器中的值,即'model.IsActive =真;' – 2013-02-15 21:31:07

回答

2

MSDN

甲DefaultValueAttribute不会造成构件与该属性的值被自动初始化。您必须在代码中设置初始值。

+0

感谢特技我解决它在吸气块'。 get {return true;}' – 2013-02-15 22:19:16

+1

在getter中设置它会导致该值始终为真,就像代码所说的那样。您永远不能将复选框设置为false。 – merekel 2013-02-15 23:05:59