2017-02-14 1 views
0

Мне хотелось бы получить список флажков контроллеру.Mvc список флажков добавить в контроллер

foreach (var item in Model.Billeder) 
    { 
    @Html.ValidationSummary(true, "", new { @class = "text-danger" }) 
    <div class="form-group"> 
     @Html.LabelFor(ModelItem => item.Overskrift, htmlAttributes: new { @class = "control-label col-md-2" }) @Html.DisplayFor(model => item.Overskrift) 
     <div class="col-md-10"> 
      <div class="checkbox"> 
       @Html.EditorFor(ModelItem => item.Emailbool) 
       @Html.ValidationMessageFor(ModelItem => item.Emailbool, "", new { @class = "text-danger" }) 
      </div> 
     </div> 
    </div> 


} 


    <div class="form-group"> 
     <div class="col-md-offset-2 col-md-10"> 
      <input type="submit" value="Send" class="btn btn-default" /> 
     </div> 
    </div> 

в Сделать предложение у меня есть

public virtual ICollection<Billed> Billeder { get; set; } 

я хотел бы, чтобы он пришел в контроллер, так что я могу сортировать их

public ActionResult MailTilbud(Tilbud tb) 

ответ

0

для-каждого цикла не будет работать потому что имя элемента флажка не будет правильно создано с индексом, что приведет к тому, что он не будет отправлен обратно в контроллер, поэтому измените его на использование для цикла:

for (int i=0 i <Model.Billeder.Count; i++) 
{ 
    @Html.ValidationSummary(true, "", new { @class = "text-danger" }) 
    <div class="form-group"> 
     @Html.LabelFor(ModelItem => Model.Billeder[i].Overskrift, htmlAttributes: new { @class = "control-label col-md-2" }) 
     @Html.DisplayFor(model => Model.Billeder[i].Overskrift) 
     <div class="col-md-10"> 
      <div class="checkbox"> 
       @Html.EditorFor(ModelItem => Model.Billeder[i].Emailbool) 
       @Html.ValidationMessageFor(ModelItem => Model.Billeder[i].Emailbool, "", new { @class = "text-danger" }) 
      </div> 
     </div> 
    </div> 
} 

, и вам нужно будет изменить вашу модель, чтобы иметь IList<T>, так как ICollection<T> не имеет поддержки индексации.

public virtual IList<Billed> Billeder { get; set; } 

и если выше свойство в модели, которая отображается в виде таблицы с использованием Entity Framework, то вам необходимо будет создать ViewModel класс, специфичные для просмотра вместо модификации модели DTO.

+0

Эй, @ Ehsan, для этого я должен был бы изменить ICollection так же хорошо? благодаря –

+0

, если '' ICollection не поддерживает индексацию, то да, вы можете использовать '' IList

+0

не может применить индексирование с [] к выражению типа «ICollection » –