2016-11-08 3 views
1

У меня есть класс клиентов со свойством Gender. Я создал список типа «Пол», который содержит и номер идентификатора, и тип «Пол». Когда форма отправлена, я получаю нулевое значение.Dropdownlistfor возвращает значение null

Посмотреть

@model MovieRentals.ViewModel.CustomerView 
<div class="form-group"> 
    <h4>@Html.LabelFor(l => l.Customer.BirthDate)</h4> 
    @Html.DropDownListFor(l => l.CustomerGender, new SelectList(Model.CustomerGender, "GenderId", "GenderType"), "Select Gender", new { @class = "form-control" }) 
</div> 

Модель

public class CustomerView 
{ 
    public IEnumerable<MembershipType> MembershipTypes{ get; set; } 
    public Customer Customer { get; set; } 
    public List<GenderClass> CustomerGender{ get; set; } 
} 

public class GenderClass 
{ 
    public int GenderId { get; set; } 
    public string GenderType { get; set; } 
} 

Контроллер

public ActionResult New() 
    { 
     var MembershipTy = _context.MemebershipType.ToList(); 
     var ViewModel = new CustomerView(); 
     ViewModel.CustomerGender = new List<GenderClass>() 
     { 
      new GenderClass(){ GenderId = 1, GenderType = "Male"}, 
      new GenderClass() { GenderId = 2, GenderType = "Female"} 
     }; 
     ViewModel.MembershipTypes = MembershipTy; 
     return View(ViewModel); 
    } 
+0

Поскольку вы используете то же свойство, что и источник данных, и удерживаете выделение. Для хранения выбранного значения требуется неперечислимое свойство. – CodeCaster

+0

Вы не можете связать '