具有DDL和数量的MVC选择编辑器视图模型

时间:2018-11-06 14:27:42

标签: asp.net-mvc-5

过去,我一直在使用这种好的解决方案来管理视图中的多个选定项目:

http://johnatten.com/2014/01/05/asp-net-mvc-display-an-html-table-with-checkboxes-to-select-row-items/

现在我有一个类似的问题,我认为这种方法可能会有所帮助。我的模型有一个订单表,可以匹配很多产品。在“创建”视图上,我想使用具有“产品”和“数量”输入的DDL将产品添加到我的订单中。这些作品带有添加项按钮和模式:

Add buttom

The modal

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进行其他解决方案并工作,但我认为使用ViewModel和本机MVC工具是解决此问题的更好方法...)

0 个答案:

没有答案