2015-03-02 114 views
0

我有一个问题,从单选按钮传递数据到模型。从ViewBag MVC Radiobutton

这是在我的控制器:

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

角色类型。

@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; 
      }