@Html.DisplayFor()
значение не изменяется после отправки данных. Я прочитал статью об этой проблеме и произнес ее так: только отправьте данные, такие как EditorFor
, TextBoxFor
, TextAreaFor
и изменить положение. Это правда? Как я могу изменить это значение после обратной передачи?@ Html.DisplayFor() значение не изменяется после обратной передачи
Посмотреть
@model HRProj.Model.Person
@using(Html.BeginForm("Skills", "Home", FormMethod.Post, new { enctype = "multipart/form-data" })){
@Html.HiddenFor(m => m.SkillDoc.Filename)
<span class="file-upload">
<span>Choose a file</span>
<input type="file" name="file" />
</span>
File name : @Html.DisplayFor(m => m.SkillDoc.Filename)
<button>Upload</button>
}
Контроллер
public ActionResult Skills(int? id)
{
Others oparations...
var model = new Person { SkillDoc = db.GetSkillDoc().FirstOrDefault(m => m.PersonId == id) };
return View(model);
}
[HttpPost]
public ActionResult Skills(Person model, HttpPostedFileBase file)
{
Others oparations...
if (ModelState.IsValid)
{
SkillDoc doc = new SkillDoc();
doc.Id = model.SkillDoc.Id;
doc.PersonId = model.SkillDoc.PersonId;
doc.CvDoc = (file != null) ? file.FileName : model.SkillDoc.CvDoc;
db.SkillDocCRUD(doc, "I");
TempData["eState"] = "The record adding successfully";
if (file != null)
{
file.SaveAs(Server.MapPath("~/Files/" + file.FileName));
}
}
return View(model);
}
Не могли бы вы объяснить, отправить данные? –
Я загружаю файл, и я хочу показать имя, которое загрузил файл в моей форме, но он замалчивается после обновления страницы. –
Вы устанавливаете то же самое в своем методе действий? Также, пожалуйста, напишите свой код метода действия. –