asp.net-mvc-4 – 多个单选按钮组在MVC 4剃刀

我需要有多个单选按钮组在我的形式像这样:

我知道它只是通过为每个组指定相同的“名称”html属性
然而
MVC不允许你在使用html helper时指定你自己的name属性,像这样:

@Html.RadioButtonFor(i => item.id,item.SelectedID,new { Name = item.OptServiceCatId })

因为它查看每个标签的“名称属性(而不是“id”)来将表单映射/绑定到控制器接收的模型等。

有人说,指定每个具有相同的“GroupName”属性解决问题,但它也没有工作。

所以,有什么办法吗?

编辑:
这里是我的观点(简化):

@model Service_Provider.viewmodels.SelectOptServicesForSubServiceviewmodel

@foreach (var cat in Model.OptServices)
{
  //A piece of code & html here
  @foreach (var item in cat.OptItems.Where(i => i.MultiSelect == false))
  {
     @Html.RadioButtonFor(i => item.id,new { GroupName = item.OptServiceCatId })
<br />
  }    
}

注意:
我的模型是List< OptServices&gt ;:

public List<OptServices> Cats {get; set;}

和OptServices有一个OptItems列表里面:

public class OptServices
{
//a few things
public List<OptItems> Items {get; set;}
}

解决方法

所有你需要的是将组绑定到模型中的不同项目
@Html.RadioButtonFor(x => x.Field1,"Milk")
@Html.RadioButtonFor(x => x.Field1,"Butter")

@Html.RadioButtonFor(x => x.Field2,"Water")
@Html.RadioButtonFor(x => x.Field2,"Beer")

相关文章

这篇文章主要讲解了“WPF如何实现带筛选功能的DataGrid”,文...
本篇内容介绍了“基于WPF如何实现3D画廊动画效果”的有关知识...
Some samples are below for ASP.Net web form controls:(fr...
问题描述: 对于未定义为 System.String 的列,唯一有效的值...
最近用到了CalendarExtender,结果不知道为什么发生了错位,...
ASP.NET 2.0 page lifecyle ASP.NET 2.0 event sequence cha...