ページにチェックボックスのリストがありますが、それらの値がコントローラーに到達していません。
ListViewModel
このビューで必要なすべてのモデルがここにあります。データベースからTechniques
のリストです。持っていると属性として。 同じサイズのテクニックタイプのブール配列ですTechnique
Technique
TechiqueID
Type
tech
@model ListViewModel
@foreach (var item in Model.Techniques ){
<div>
@Html.CheckBoxFor(m => m.tech[item.TechniqueID])
@item.Type
</div>
}
tech[]
コントローラーでnullが発生する理由は何ですか?tech[0] = false
コントローラなどにあるはずtech[1] = false
です。
出力:
<div>
<input data-val="true" data-val-required="The Boolean field is required." id="tech_1_" name="tech[1]" type="checkbox" value="true" /><input name="tech[1]" type="hidden" value="false" />
Slippers, Distracting Tasks
</div>
<div>
<input data-val="true" data-val-required="The Boolean field is required." id="tech_2_" name="tech[2]" type="checkbox" value="true" /><input name="tech[2]" type="hidden" value="false" />
Hallway Placement
</div>