Asp.net 如何在Razor中使用编辑器模板创建radiobutton组
我有下面的型号Asp.net 如何在Razor中使用编辑器模板创建radiobutton组,asp.net,asp.net-mvc,asp.net-mvc-3,razor,mvc-editor-templates,Asp.net,Asp.net Mvc,Asp.net Mvc 3,Razor,Mvc Editor Templates,我有下面的型号 public class FilterSetting { public FilterType Type { get; set; } public ShowOption Option { get; set; } public bool IsMultiple { get; set; } public List<int> SelectedValues { get; set; } public List<SelectListIt
public class FilterSetting
{
public FilterType Type { get; set; }
public ShowOption Option { get; set; }
public bool IsMultiple { get; set; }
public List<int> SelectedValues { get; set; }
public List<SelectListItem> Values { get; set; }
public int RowCount { get; set; }
}
public enum ShowOption
{
Common,
Also,
All
}
当我这样称呼它的时候
@Html.EditorFor(f => f.filterSettings)
单选按钮工作正常。当我为每个人做这些事情时会发生什么
谢谢你的帮助 当您调用集合的
编辑器/EditorFor
时,Razor将跟踪生成的名称和ID,因此您将获得生成的名称,例如地址[0]。Line1
,地址[1]。Line1
但是,当您自己迭代集合并调用each model razor的编辑器时,不要跟踪名称和ID(应该是怎样的?这不会更复杂吗?)它被认为是将在页面中呈现的一个新控件。当您为集合调用
编辑器/EditorFor
时,Razor将跟踪生成的名称和ID,因此您将获得生成的名称,例如地址[0]。Line1
,地址[1]。Line1
但是,当您自己迭代集合并调用每个模型的编辑器时,razor不会跟踪名称和id(应该如何?这不会更复杂吗?),它被认为是一个新控件,将在页面中呈现。通常我使用@Html.HiddenFor(x=>x.id)和@Html.HiddenFor(x=>x.name),试试这个通常我使用@Html.HiddenFor(x=>x.id)和@Html.HiddenFor(x=>x.name),试试这个
@foreach (var filter in Model.FilterSettings)
{
....
@Html.EditorFor(f => filter)
}
@Html.EditorFor(f => f.filterSettings)