2013-02-15 139 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