0
我有以下for循環,其中Type是一個枚舉。我想通過表單循環,併爲每個路線允許下拉類型。如何在for循環中執行EnumDropdownListFor
@for (int i = 0; i < Model.Routes.Count; i++)
{
@Html.Hidden("Routes[" + index + "].Id", Model.Routes[i].Id)
@Html.EnumDropDownListFor("Routes[" + index + "].Id", Model.Routes[i].Type)
@Html.Hidden("Routes[" + index + "].Name", Model.Routes[i].Name)
@Html.CheckBox("Routes[" + index + "].IsChecked", Model.Routes[i].IsChecked)
@Model.Routes[i].Name<br />
index++;
}
public class RouteModel
{
public Guid Id { get; set; }
public RouteType Type { get; set; }
public int Number { get; set; }
public string Name { get; set; }
public bool IsActive { get; set; }
public bool IsChecked { get; set; }
}
public enum RouteType
{
Transit,
Air,
Bus
}
我似乎無法弄清楚如何使MVC5 EnumDropDownListFor幫助器在for循環中工作。看起來我可能沒有,儘管我想我會問,如果有人遇到同樣的問題,並發現了替代品或讓他們工作。
EnumDropDownListFor(MSDN)http://msdn.microsoft.com/en-us/library/dn550750(v=vs.118).aspx - 這是我正在使用的幫手,它不是我自己的。
而且你應該使用強類型的輔助的其他屬性也'@ Html.HiddenFor(M => m.Routes [I] .ID)'和'@ Html.CheckBoxFor(M = > m.Routes [i] .IsChecked)':) –
同意,謝謝。我注意到,當我試圖弄清楚事情時,這不是最好的方法。 – devfunkd