これは概念的な質問です。
私の知る限り、MVCにはステートレスな性質があります。ブラウザでリロード(F5)を押すと、ビューで書き込んだり変更したりした値が消えたり、モデルの元の値に置き換えられたりすることはありません。
なぜこれが起こっているのか誰かが知っていますか?ページをリロードした瞬間に、変更された「未送信」の値が消えると思います。
私の見解はかみそりのコードだけです...私はWebフォームを使用していません(つまり、私のアプリケーションには.aspxページがありません)
@model PruebaMVC.Models.DatosLINQ.OPERACION
@{
ViewBag.Title = "Edit";
}
<h2>Editar Operación</h2>
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
@using (Html.BeginForm()) {
@Html.ValidationSummary(true)
<fieldset>
<legend>Operación</legend>
@Html.HiddenFor(model => model.IDOperacion)
<div class="editor-label">
@Html.LabelFor(model => model.FechaOperacion, "Fecha de la Operación")
</div>
<div class="editor-field">
@Html.EditorFor(model => model.FechaOperacion)
@Html.ValidationMessageFor(model => model.FechaOperacion)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.Comision, "Comisión")
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Comision)
@Html.ValidationMessageFor(model => model.Comision)
</div>
<div class="editor-label">
@Html.LabelFor(model => model.Legajo, "Número de Legajo")
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Legajo)
@Html.ValidationMessageFor(model => model.Legajo)
</div>
<p>
<input type="submit" class="formbutton" value="Guardar Cambios" />
</p>
</fieldset>
}
<div>
@Html.ActionLink("Volver al listado de Operaciones", "Index")
</div>
概念的な質問をすることによってサイトの規則を負わせないことを望みます。もしそうなら、教えてください、そうすれば二度とこれをしません。