ASP.NET Частичный просмотр MVC с формой
-
06-07-2019 - |
Вопрос
У меня есть сценарий, я хочу использовать частичное представление, но у меня возникают проблемы с передачей данных контроллеру.Вот простой пример того, что я пытаюсь сделать.
Объекты:
- Клиент
- Порядок
У Клиента есть IList<Order>
на нем.Я хочу, чтобы частичный просмотр позволял пользователю редактировать информацию.Я могу получить данные для отображения, но когда форма публикует список под объектом Customer, значение null равно.
Я также попытался использовать отдельную форму в моем частичном представлении.Когда я делаю это, если я создаю параметры на контроллере, например, so, я получаю данные:
public ActionResult UpdateOrders(IList<Guid> id, IList<int> quantity, IList<Guid> productId)
Но когда я делаю это
public ActionResult UpdateOrders(IList<Order> orders)
Список равен нулю.
Если у кого-нибудь есть лучшее предложение о том, как этого добиться, дайте мне знать.
Решение
Как вы ссылаетесь на поля в вашем представлении?Я думаю, что это должно быть что-то вроде:
<input type="hidden" name="orders.Index" value="0" />
<input type="hidden" name="oders[0].ID" value="1" />
<input type="hidden" name="orders[0].productId" value="4" />
<input type="text" name="orders[0].quantity" value="6" />
<input type="hidden" name="orders.Index" value="1" />
<input type="hidden" name="orders[1].ID" value="2" />
<input type="hidden" name="orders[1].productId" value="2" />
<input type="text" name="orders[1].quantity" value="15" />
Смотрите запись в блоге Фила Хаака о привязка к списку для получения дополнительной информации.