Есть представления CreatePage:
<select name='Fields[0].TypeFields' onchange='addElement(this);'>
<option>Type of field</option>
<option value='1'>One of the list</option>
<option value='2'>several of the list</option>
<option value='3'>Drop-down list</option>
<option value='4'>Text-string</option>
<option value='5'>Text-paragraph</option>
</select>
<input type="submit" value="Save">
Форма расширяемая с помощью onchange = 'addElement (this), поэтому name =' Fields [0] .TypeFields '.Нажатие кнопки отправляет значение в базу данных.Если выбран «Один из списка», то отправляется значение = «1».Но когда я перехожу на страницу редактирования формы, по умолчанию устанавливается значение «Тип поля».
@Html.DropDownListFor(model => model.Fields[i].TypeFields, new SelectListItem[]
{
new SelectListItem(){ Text="Type of field", Disabled = false},
new SelectListItem(){ Text="One of the list", Value = "1"},
new SelectListItem(){ Text="Several of the list", Value = "2"},
new SelectListItem(){ Text="Drop-down lis", Value = "3"},
new SelectListItem(){ Text="Text-string", Value = "4"},
new SelectListItem(){ Text="Text-paragraph", Value = "5"}},
new { @onchange = "addElement(this);" })
И мне нужно, если выбрано «1», было выбрано «Один из списка».Может быть, я выбрал плохой путь.
public class Field
{
public int Id { get; set; }
public string TypeFields { get; set; }
//other properties
public int? NewFormId { get; set; }
public virtual NewForm NewForm { get; set; }
}
public class NewForm
{
public int Id { get; set; }
//other properties
public virtual List<Field> Fields { get; set; }
}