У меня есть модель Product (Id, Name, description,..)
:
Просмотр вызова (Edit.cshtml):
@model Product
@using (Html.BeginForm.................
@Html.HiddenFor(m => m.Id)
<div class="form-group divdatepicker">
<label>Name</label>
@Html.TextBoxFor(m => m.Name, new { @class = "form-control" })
</div>
<div class="form-group">
<label>Description</label>
@Html.TextBoxFor(m => m.description, new { @class = "form-control" })
</div>
=> ПРОСМОТР HTML
@Html.HiddenFor(m => m.Id)
Установите Id = 100 в контроллере для просмотра (значение = 100).
<input data-val="true" data-val-number="The field Id must be a number." data-val-required="The Id field is required." id="Id" name="Id" value="100" type="hidden">
В контроллере ProductController:
set Id = 100;
[HttpPost]
public ActionResult ResultContact()
{
var model = dbc.Products.Find(100);
return View(model);
}
public ActionResult Edit(UseDetail model)
{
.....
dbc.Entry(model).State = System.Data.Entity.EntityState.Modified;
dbc.SaveChanges();
}
Но, когда я просматриваю код, HTML изменил идентификатор в:
<input data-val="true" ....id="Id" name="Id" value="100" type="hidden"> 100 to product id = 300
dbc.SaveChanges()
изменить имя содержимого данных, описание, ... идентификатор продукта от 300 до 100.
Мой сайт не защищен.
Не разрешает изменение идентификатора при редактировании кода HTML.