プロジェクトで MVC 3 を使用していますが、非常に奇妙な動作が見られます。
モデルの特定の値に対して非表示フィールドを作成しようとしています。問題は、何らかの理由でフィールドに設定された値がモデルの値に対応していないことです。
例えば
テストとして、次のコードがあります。
<%:Html.Hidden("Step2", Model.Step) %>
<%:Html.HiddenFor(m => m.Step) %>
両方の隠しフィールドが同じ値を持つと思います。ビューを初めて表示するときに値を 1 に設定し、送信後にモデル フィールドの値を 1 増やします。
そのため、最初にページをレンダリングすると両方のコントロールの値が 1 になりますが、2 回目にレンダリングされる値は次のようになります。
<input id="Step2" name="Step2" type="hidden" value="2" />
<input id="Step" name="Step" type="hidden" value="1" />
ご覧のとおり、最初の値は正しいですが、2 番目の値はビューを初めて表示したときと同じようです。
私は何が欠けていますか?*For Html ヘルパーは何らかの方法で値をキャッシュしていますか? もしそうなら、どうすればこのキャッシュを無効にできますか?.
ご協力いただきありがとうございます。