asp.net-mvc - 使用 List 将嵌套列表绑定到 DropdownListFor
问题描述
我想将嵌套列表 ( List<OptionValueList>
) 传递给视图;List<OptionValue>
然后在@Html.DropdownListFor 中渲染每个对应项。
班级:
public class OptionValue
{
public int OptionID { get; set; }
public int ValueID { get; set; }
public string ValueName { get; set; }
}
public class OptionValueListList : List<OptionValueList> { }
public class OptionValueList : List<OptionValue> { }
我从 db 填充类OptionValueListList
,但我无法调整它SelectListItem
以便将数据绑定到 @HtmlDropdownListFor。
以下是我的观点:
@model Program.Models.OptionValueListList
@foreach (var item in Model) /*List<OptionValueList>*/
{
foreach (var y in item) /*List<OptionValue>*/
{
@Html.DropDownListFor(m=>y.ValueID, new SelectList(@ViewBag.x, "Value", "Text"), "Option Values")
}
}
下面是我尝试传递数据但无法正确绑定的地方,因为它呈现相同的下拉列表 18 次:
OptionValueListList o = new OptionValueListList();
o = pr.GetOptionsForProduct(id);
foreach (var item in o)
{
foreach (var i in item)
{
List<SelectListItem> li = new List<SelectListItem>();
li = (from c in item
select new SelectListItem
{
Text = c.ValueName,
Value = c.ValueID.ToString()
}).ToList();
ViewBag.x = li;
}
}
我应该把这个 Viewbag放在ViewBag.x = li;
哪里?谢谢。
解决方案
推荐阅读
- javascript - jQuery 偏移量在 iOS Safari 上总是返回 0
- c# - 在单元测试 C# 期间跳过私有方法
- php - 修改数组php
- ruby-on-rails - 在 prod 中使用 rate 在 img 标签中获取资产前缀两次。heroku
- java - 在 Java 中实现功能 fold_right
- java - 比较多个字符串android
- jdbc - Clojure jdbc - 查询单列展平结果
- matplotlib - 在 matplotlib contourf 图上绘制流线
- r - R data.table 当前和所有先前行的最大值
- git - 在中断 git commit 后获取“致命:关闭 sha1 文件时出错:权限被拒绝”