2015-03-02 2 views
0

У меня есть проблема с передачей данных от радиообъектива к модели.MVC Radiobutton from ViewBag

Это в моем контроллере:

ViewBag.allProjectAreas = db.ProjectAreas.ToList(); 

Это, на мой взгляд:

@foreach (var a in ViewBag.allProjectAreas) 
     {      
       @Html.RadioButtonFor(m => m.ProjectAreaID, a.ProjectAreaID) 
       @a.ProjectAreaName 
     } 

Я думаю, что код должен быть что-то вроде этого. У меня нет проблем с визуализацией ProjectAreaName, но я не могу отправить данные из проверенного радиообъекта в модель.

Это ошибка:

"Compiler Error Message: CS1973: 'System.Web.Mvc.HtmlHelper' has no applicable method named 'RadioButtonFor' but appears to have an extension method by that name. Extension methods cannot be dynamically dispatched. Consider casting the dynamic arguments or calling the extension method without the extension method syntax."

ответ

0

типа Cast от динамических к фактическому.

@foreach (var a in ViewBag.allProjectAreas as List<-*here comes your model*-) 
    {      
      @Html.RadioButtonFor(m => m.ProjectAreaID, a.ProjectAreaID) 
      @a.ProjectAreaName 
    } 
0

В нем говорится, что он не может понять var. Четко в преобразовании

@foreach(CompleteYourModelName modelObject in ViewBag.allProjectAreas) 
{ 
    @Html.RadioButtonFor(modelObject.ProjectAreaID.ToString(), a.ProjectAreaID) 
      @a.ProjectAreaName 
} 

пример

 @foreach (MVCDemo2.Models.Department dept in ViewBag.DepartmentList) 
      { 
       @Html.RadioButton("Department", dept.Id, dept.isSelected) 
@dept.Name; 
      }