Sto usando MVC 3 nel mio progetto e sto riscontrando un comportamento molto strano.
Sto cercando di creare un campo nascosto per un determinato valore sul mio modello, il problema è che per qualche motivo il valore impostato sul campo non corrisponde al valore nel modello.
per esempio
Ho questo codice, proprio come un test:
<%:Html.Hidden("Step2", Model.Step) %>
<%:Html.HiddenFor(m => m.Step) %>
Penserei che entrambi i campi nascosti avrebbero lo stesso valore. Quello che faccio è impostare il valore su 1 la prima volta che visualizzo la vista, quindi dopo l'invio aumento il valore del campo Modello di 1.
Quindi, la prima volta che eseguo il rendering della pagina entrambi i controlli hanno il valore 1, ma la seconda volta i valori renderizzati sono questi:
<input id="Step2" name="Step2" type="hidden" value="2" />
<input id="Step" name="Step" type="hidden" value="1" />
Come puoi vedere, il primo valore è corretto, ma il secondo valore sembra essere lo stesso della prima volta che visualizzo la vista.
Cosa mi sto perdendo? Gli helper * For Html memorizzano nella cache i valori in qualche modo? In tal caso, come posso disabilitare questa memorizzazione nella cache ?.
Grazie per l'aiuto.