質問: 2 Return View(model) End Function ``` ### 試したこと 初期表示で1(男)をセットせず、ラジオボタンを未選択状態にするとポスト時に選択することはできました。 ### 追記 同じようにポスト時にテキストボックスに値をセットしてみましたが変更できませんでした。 何かが根本的に間違っているようです・・・
回答: どのような操作をしているのか不明なのでハズレかもしれませんが、想像を膨らませると、たぶん、RadioButtonFor には POST された値がそのまま使われているからではないかと思います。 POST された値は ModelState ディクショナリ(model ではない)に格納されていて、Html Helper はまず ModelState ディクショナリを調べて、そこに値があればそれを表示するようになっています。 > > ポスト時にModelState.Clear()を呼んだら更新できました。 > > > ModelState ディクショナリを Clear すること model から値を取ってくるので、そうなったのではないかと思います。 詳しいことは、EditorFor の例ですが、以下の記事を見てください。POST 要求を受けるアクションメソッドで model のプロパティを変えても表示が変わらないメカニズムは RadioButtonFor も同じだと思います。 EditorFor と DisplayFor の違い