私の見解では、bool フィールドのチェックボックスがあります。
=Html.CheckBox("Active", ViewData["Active"] != null ? ViewData["Active"] : (ViewData.Model.Active != null ? ViewData.Model.Active : false)
必要に応じて、綿毛を忘れることができます。
=Html.CheckBox("アクティブ", ViewData.Model.Active)
..同じ問題を引き起こします。
モデルを次のように更新しようとすると:
UpdateModel(欠員、Request.Form.AllKeys);
..i 2 つの bool フィールドを含むオブジェクト配列の戻り値を取得します。わかりました、隠しフィールドの必要性を理解しています。しかし、MVC Beta を使用していますが、投稿データが UpdateModel によって正しく処理されていないと思います。次のエラーが表示されます: System.FormatException "文字列は有効なブール値として認識されませんでした。" ..フォームが時々ポストバックするとき。つまり、フォームの別のフィールドが空の場合を除いて、フォームは正常に機能し、true と false の状態を保存するということです。次に、「true、false」の値について不平を言います。それでいい。文字列「true、false」は有効なブール値ではないことは理解していますが、時々文句を言うことはありますか? 助けてください
編集: UpdateModel() メソッドへの別のアプローチを誰かが提案できる場合は、それを見てください。これは私が見逃している単純なものだと思います。
編集 2:これは MVC ベータ版 ( http://www.codeplex.com/aspnet/WorkItem/View.aspx?WorkItemId=2671&FocusElement=CommentTextBox ) の既知のバグのようです。誰かが回避策を提案できますか?