В прошлом я использовал это хорошее решение для управления несколькими выбранными элементами в представлении:
http://johnatten.com/2014/01/05/asp-net-mvc-display-an-html-table-with-checkboxes-to-select-row-items/
Теперь у меня похожая проблема, и я думаю, что этот подход может помочь. У моей модели есть таблица заказов, которая соответствует множеству продуктов. В представлении Создать я хочу добавить продукты в свой заказ с помощью DDL с продуктом и вводом для количеств. Эти работы с надписью добавить элемент и модал:
Добавить кнопку
Модал
ViewModels:
public class SelectProductEditorViewModel
{
public int Quantity { get; set; }
public long ProductId { get; set; }
public Models.Product Product { get; set; }
}
public class CreateOrderViewModel
{
public CreateOrderViewModel()
{
this.Products = new List<SelectProductEditorViewModel>();
}
public IEnumerable<long> getSelectedProductIds()
{
return (from p in this.Products where p.Quantity > 0 select p.ProductId).ToList();
}
public IEnumerable<int> getSelectedProductQuantities()
{
return (from p in this.Products where p.Quantity > 0 select p.Quantity).ToList();
}
public List<SelectProductEditorViewModel> Products { get; set; }
public List<SelectListItem> ProductList { get; set; }
}
Возможно ли реализовать это, используя этот подход? (Я пробовал другие решения с использованием JS и работает, но я думаю, что использование viewmodels и собственных инструментов MVC - лучший способ решить эту проблему ...)