Когда я использую автоматическое создание контроллеров / моделей / представлений из структуры и дизайнера сущностей, я получаю довольно чистую форму редактирования. Одно из соотношений 1: 1 создает раскрывающийся список, который представляет пользователю значения из определенного столбца, но я хочу, чтобы он использовал другой столбец / свойство.
Как это сделать?
(К вашему сведению, я не ищу класс в MVVM и как его изолировать в модели представления. У меня нет пропускной способности для изучения и воссоздания этого приложения с классами модели представления.)
<div class="editor-label">
@Html.LabelFor(model => model.Domain, "Domain1")
</div>
<div class="editor-field">
@Html.DropDownList("Domain", String.Empty))
@Html.ValidationMessageFor(model => model.Domain)
</div>
Контроллер:
public ActionResult Edit(int id)
{
ClientJob clientjob = db.ClientJobs.Find(id);
ViewBag.ClientId = new SelectList(db.Clients, "Id", "ClientName", clientjob.ClientId);
ViewBag.CurrencyType = new SelectList(db.CurrencyTypes, "Id", "TypeName", clientjob.CurrencyType);
ViewBag.Domain = new SelectList(db.Domains, "Id", "DomainName", clientjob.Domain);
ViewBag.JobType = new SelectList(db.JobTypes, "Id", "JobTypeName", clientjob.JobType);
ViewBag.DatabaseServer = new SelectList(db.Servers, "Id", "ServerName", clientjob.DatabaseServer);
ViewBag.ProcessingServer = new SelectList(db.Servers, "Id", "ServerName", clientjob.ProcessingServer);
ViewBag.QueryServer = new SelectList(db.Servers, "Id", "ServerName", clientjob.QueryServer);
return View(clientjob);
}