У меня возникла проблема с возвратом выделенного ключа выпадающего списка.MVC Disabled DropDownlistValue не публиковать выбранный ключ
Это мое событие редактирования, когда я нахожу регистр по идентификатору и отправляю его на просмотр. В этот момент все в порядке.
public ActionResult Edit(int id)
{
var model = _mapper.Mapear(_dispositivoService.ConsultarPorId(id));
model.ListaProfissionaisAtivos = new SelectList(_profissionalService.ListarAtivos(), "ProfissionalID", "Nome", model.ProfissionalID);
return View(model);
}
Это мой список DropDownList. Все в порядке. Все элементы есть, и выбран идентификатор элемента, который был сохранен в базе данных.
@Html.DropDownList("ProfissionalID", Model.ListaProfissionaisAtivos, new { @class = "control-label col-md-2", @disabled = "disabled" })
Но после того, как данные после формы, каждый prperty являются fiilled, excet тот, который является ключом к DropDownList: ProfissionalID
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit(ProfissionalDispositivoViewModel model)
{
try
{
model.ListaProfissionaisAtivos = new SelectList(_profissionalService.ListarAtivos(), "ProfissionalID", "Nome", model.ProfissionalID);
if (ModelState.IsValid)
{
var dominio = _mapper.Mapear(model);
_dispositivoService.Atualizar(dominio);
return RedirectToAction("Index");
}
return View(model);
}
catch (Exception ex)
{
ViewBag.Mensagem = ex.Message;
return View("Error");
}
}
Кажется, что MVC не отправляет значение контроля инвалидов. Мой раскрывающийся список отключен. Но мне нужно сохранить эту ценность для сохранения ошибок без ошибок. Как я могу это сделать и запретить пользователю редактировать это поле?
Обратите внимание, что тег-контроллер-модель-образец предназначен для вопросов о шаблоне. Существует определенный тег для реализации ASP.NET-MVC. –
Включите скрытый ввод для свойства (и удалите раскрывающийся список - нет ненужного рендеринга html - просто визуализируйте отображаемое имя, связанное с выбранным элементом) –
Также поймите, как html работает и не специфичен для asp.net mvc. Отключенные входы никогда не отправляют свои значения обратно на сервер. – Fran