MVC3 と Razor ビューを使用しています。ビューに適切なデータが入力されています。
ヘルパーモデル
public partial class Visibility
{
public enum VisibilityLevel { ShowThis, HideThis, HideAll }
...
}
public partial class Address
{
public Visibility.VisibilityLevel Visibility{
get {
...
意見
@Html.RadioButtonFor(m => m.HIDE_DATA, Models.Visibility.VisibilityLevel.ShowThis ) <span>Show @Model.TYPE_DESC address</span><br />
@Html.RadioButtonFor(m => m.HIDE_DATA, Models.Visibility.VisibilityLevel.HideThis) <span>Don't show @Model.TYPE_DESC address </span><br />
@Html.RadioButtonFor(m => m.HIDE_DATA, Models.Visibility.VisibilityLevel.HideAll) <span>Don't show ANY addresses</span><br />
コントローラ
//
// POST: /Address/Edit/5
[HttpPost]
public ActionResult Edit(Address addr,string submitButton)
{
...
これにより、データとモデル定義に基づいてページが適切に取り込まれましたが、ポストバックは新しい値を取得しません。コントローラーを調べると、送信時に渡される Address モデルには、ユーザーが選択または変更した値ではなく、RadioButton の元の値があります。私は何が欠けていますか?