Asp.net MVC 4, Как сделать Master Detail в том же виде - PullRequest
5 голосов
/ 06 февраля 2012

Я использую Entity Framework 4.2 и MVC 4

Получил эту модель / Структура базы данных

Информация пользователя Идентификатор_пользователя (ПК)ИмяФамилияЭл. адрес

UserFavoriteColor FavID (ПК)цветЗачемИдентификатор_пользователя (ФК)

Возможно ли в одном действии Create Controller заполнить таблицу UserInformation и затем заполнить UserFavoriteColor.

Я знаю, что я мог бы выполнить это в два этапа, создав 2 отдельных раздела.Но это не то, что я хочу.

enter image description here

1 Ответ

7 голосов
/ 06 февраля 2012

Обычно вы используете jQuery для вставки новой строки.Поскольку мы не знаем, как выглядит ваш код, сложно показать вам, как именно это следует делать, но вы можете посмотреть примеры здесь:

http://ivanz.com/2011/06/16/editing-variable-length-reorderable-collections-in-asp-net-mvc-part-1/

Хитростьзаключается в том, что вы должны назвать их соответствующим образом, чтобы связыватель модели добавлял их в вашу коллекцию при нажатии кнопки «Сохранить».Затем вы должны написать код в своем методе post, чтобы пройтись по списку цветов и добавить любые записи, которые уже не существуют.

Это довольно сложная вещь, поэтому ее не так просто охватить.в одном ответе здесь.

Другой вариант - просто выполнить действие для кнопки добавления нового, и это вставит пустую запись в сбор данных, который при обратной передаче теперь получит 3 записи (одна из них).с нулевыми значениями).Когда вы заполняете значения, он затем отправляет обратно в основной метод post и обновляет пустую запись.

Это решение имеет тот недостаток, что если пользователь добавляет новую запись и не сохраняет ее, пустая записьостается в базе данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...