#asp.net-mvc-3
#asp.net-mvc-3
Вопрос:
У меня есть список в контроллере, и мой код выглядит следующим образом.
ViewBag.Organizations = _frontendUserService.GetOrganizationByClientId(Constants.ClientId);
И я устанавливаю этот список на своей странице просмотра с выпадающим списком.
@Html.DropDownListFor(
model => model.Organization.OrganizationId,
new SelectList(
ViewBag.Organizations as System.Collections.IEnumerable,
"OrganizationId",
"OrganizationName"),
"-- Select Organization --")
Здесь я получаю идентификатор организации в качестве выбранного элемента. Вместо этого я хочу извлечь выбранный элемент как объект «Организация» в запросе POST к моему методу действия.
На самом деле, почему я хотел получить весь объект здесь, потому что, когда я запрашиваю базу данных по OrganizationId, я получаю следующую ошибку.
Error: sequence contains more than one matching element
В моем приложении я использую шаблон репозитория.
Ответ №1:
Это можно было бы сделать, но я не вижу в этом смысла. Скорее всего, намного эффективнее снова извлечь его из базы данных вместо того, чтобы пытаться делать то, что вы просите.
Комментарии:
1. В настоящее время я пытаюсь выполнить выборку из базы данных. Но я получаю следующую ошибку при запросе по OrganizationId. Ошибка: последовательность содержит более одного совпадающего элемента
2. Это другой вопрос. верно? В этом вопросе вы спрашиваете, как вы можете получить весь объект в сообщении, используя список выбора. Либо отредактируйте вопрос и добавьте соответствующую информацию, либо создайте новый.
Ответ №2:
Я пытался сделать что-то подобное, но безуспешно — в итоге использовал часть кода этого сайта и инструмент генератора, работает довольно хорошо:http://www.mvc3razor.com/sample-code /