【发布时间】:2020-04-13 05:51:21
【问题描述】:
我正在尝试将多个单选列表绑定到我的视图模型中的一个字符串列表我有属性:public List<string> Items {get; set;} 并且在我看来我有 3 个带有单选选项的选择列表,但是当我尝试建模时使用 asp-for="@Model.Items" 将我的选择列表绑定到 Items 属性,我的所有单选列表都转换为多选列表。为什么?
我的看法:
<form asp-controller="Admin" asp-action="Index" method="post">
<div class="col-12">
<div class="row">
<div class="form-group col-4">
<div class="d-inline-block">
<label>Order By Price:</label>
</div>
<div class="d-inline-block">
<select class="form-control" asp-for="@Model.Items" style="width:150px">
<option value="Ascending">Ascending</option>
<option value="Descending">Descending</option>
</select>
</div>
</div>
<div class="form-group col-4">
<div class="d-inline-block">
<label>Order By Name:</label>
</div>
<div class="d-inline-block">
<select class="form-control" asp-for="@Model.Items" style="width:150px">
<option value="A-Z">A-Z</option>
<option value="Z-A">Z-A</option>
</select>
</div>
</div>
<div class="form-group">
<div class="d-inline-block">
<button type="submit" class="btn btn-secondary">Confirm</button>
</div>
</div>
</div>
</div>
</form>
控制器:
[HttpPost]
public IActionResult Index(MangeProductsViewModel vm)
{
return View(new MangeProductsViewModel
{
Products = productRepository.Products.ToList().SortProducts(vm)
});
}
我的视图模型
public IEnumerable<Product> Products { get; set; }
public List<string> Items { get; set; }
当我从列表中选择项目时,它会正确添加它们,问题是用户可以从一个列表中选择多个选项
【问题讨论】:
-
请分享生成的选择列表的html代码sn-p
-
我为我的视图和控制器添加了代码
标签: asp.net-core asp.net-core-mvc asp.net-core-2.0