我有一个应用程序需要选择服务可用的所有州(美国)。为方便起见,我试图从enum" State",displayu数组创建列表作为复选框,并将所选内容保存到数据库。无法找出创建它的最佳方法。
这是班级:
public class Offering
{
public int OfferingID { get; set; }
public string Name { get; set; }
public IList<State> States { get; set; }
}
public enum State
{
AL, AK, AZ, CA, CO, CT, DC, DE, FL
}
MVC的新手,所以非常感谢任何帮助。
答案 0 :(得分:1)
无需编写自己的模型绑定器的最简单方法是这样的:
<table>
<thead>
<tr>
<td></td>
<td>State</td>
</tr>
</thead>
<tbody>
@foreach (State state in Enum.GetValues(typeof(State)))
{
<tr>
<td>@Html.CheckBoxFor(model => model.States[state.ToString()].IsStateSelected)</td>
<td>@state.ToString()</td>
</tr>
}
</tbody>
使用这种方法,您需要创建一个新类StateViewModel:
class StateViewModel
{
public bool IsStateSelected { get; set; }
}
以及您的“产品”模型中的其他属性
public Dictionary<string, bool> States { get; set; }