Создание раскрывающегося списка в MVC3 C # с ViewModel и простой привязкой модели на POST.

У меня есть эта проблема, где я хочу сделать 7 выпадающих для каждого дня недели. В каждом из этих выпадающих я хочу добавить те же данные.

Моя ViewModel:

public class WeekDienstCreateViewModel
{
    public WeekDienst weekDienst {get; set;}
    public List<DienstPerWeekDienst> diensten { get; set; }

    public WeekDienstCreateViewModel() { }
}

Мой метод создания в контроллере: Как вы можете видеть, я уже добавляю все, кроме DienstId, который требуется добавить в мои выпадающие списки.

 public ActionResult Create(int id)
        {
            WeekDienst wd = _service.FindWeekDienst(id);
            WeekDienstCreateViewModel vm = new WeekDienstCreateViewModel();

            vm.diensten = new List<DienstPerWeekDienst>();
            vm.weekDienst = wd;

            for (int i = 1; i <= 7; i++)
            {
                DienstPerWeekDienst dpwd = new DienstPerWeekDienst();
                dpwd.volgnummer = i;
                dpwd.WeekDienstId = wd.Id;

                vm.diensten.Add(dpwd);
            }
            ViewBag.Diensten = _service.DienstenList(wd.AfdelingId);

            return View(vm);
        } 

Классы:

 public class DienstPerWeekDienst
    {
        [Key]
        public int Id { get; set; }

        [Required]
        public int WeekDienstId { get; set; }

        [Required]
        public int DienstId { get; set; }

        [Required]
        [Range(1, 7)]
        public int volgnummer { get; set; }

        [ForeignKey("WeekDienstId")]
        public virtual WeekDienst WeekDienst { get; set; }

        [ForeignKey("DienstId")]
        public virtual Dienst Dienst { get; set; }

        public virtual ICollection<WeekDienst> WeekDiensten { get; set; }
    }

 public class WeekDienst
    {
        [Key]
        public int Id { get; set; }

        [Required]
        public int AfdelingId { get; set; }

        [Required]
        [StringLength(5, ErrorMessage = "Value for {0} cannot exceed {1} characters.")]
        [RegularExpression(@"^[a-zA-Z0-9]{5}$", ErrorMessage = "Verplicht 5 cijfers lang.")]
        public string code { get; set; }

        [DisplayName("Template")]
        public bool template { get; set; }

        [ForeignKey("AfdelingId")]
        public virtual Afdeling Afdeling { get; set; }
    }

И, на мой взгляд, я хотел бы создать 7 выпадающих, где я вставил все мои "Diensten" (класс Dienst, FK в DienstPerWeekDienst). Когда я выбираю 1, я хочу добавить «DienstId» в класс «DienstPerWeekDienst».

Так что в моем представлении я получил это:

            @foreach (var day in Model.diensten)                 
             {   
                  var currentDay=day;
                  @Html.DropDownListFor(currentDropDown=>currentDay, new SelectList(ViewBag.Diensten, "Value", "Text"))                 
             }

Я хочу отправить обратно выбранный «Diensten» и создать «WeekDienst», но сейчас я просто публикую нулевой «DienstPerDienstWeekCreateViewModel». Как я могу это исправить?

Заранее спасибо

FIX (Спасибо Шива Гопал)

Я исправил это, выполнив:

@for (int i = 0; i < @Model.diensten.Count; i++)
                {
                    @Html.HiddenFor(m => (m.diensten[i].volgnummer))
                    @Html.HiddenFor(m => (m.diensten[i].WeekDienstId))
                    @Html.DropDownListFor(m=> (m.diensten[i].DienstId), new SelectList(ViewBag.Diensten, "Value", "Text"))
                }

Ответы на вопрос(3)

Ваш ответ на вопрос