ここでいくつかのトピックを見ましたが、チェックボックスから値を取得する際にまだ問題があります。
モデルの一部:
public Dictionary<Language, bool> TargetLanguages { get; set; }
ビューの一部:
<div class="editor-label">
<label for="TargetLanguages">select target languages</label>
</div>
<div class="editor-field">
<form>
@foreach (var item in Model.TargetLanguages)
{
@Html.CheckBox("TargetLanguages["+item.Key.Name+"]", item.Value)
@item.Key.Name
}
</form>
</div>
コントローラの一部:
[HttpPost, ActionName("AddDictionary")]
public ActionResult AddDictionary(FormCollection collection)
{
...
}
問題は、FormCollection に TargetLanguages の痕跡がまったくないことです。CheckBoxFor を試しましたが、役に立ちませんでした。私も手動でチェックボックスを書いてみました。
EDITED:さて、問題がどこにあるかに気づきました。マーカーがめちゃくちゃで、それが FormCollection からデータを取得できない理由です。