带有单选按钮的ASP.Net MVC3 ViewModel无法正常工作

Mur*_*san 10 asp.net-mvc asp.net-mvc-3

这是我的ViewModel类,我用单选按钮和复选框绑定

public class MyListViewModel
{
    public bool Isselected { get; set; }
    public Int32 ID { get; set; }      
    public string EmpName { get; set; }

}
Run Code Online (Sandbox Code Playgroud)

问题: 对于控制器类中的复选框,我可以看到带有绑定模型的IsSelected属性如果选择则为true.但是在单选按钮的情况下,它总是显示错误.任何帮助赞赏

复选框

剃刀代码

 @Html.CheckBox(myListObj.Isselected.ToString(), myListObj.Isselected, 
  new { id = myListObj.Isselected.ToString() })
Run Code Online (Sandbox Code Playgroud)

制作HTML

 <input type="checkbox" value="true" name="myListObj[0].Isselected" id="22">
 <input type="hidden" value="false" name="myListObj[0].Isselected">
Run Code Online (Sandbox Code Playgroud)

单选按钮

剃刀:

 @Html.RadioButton(myListObj.Isselected.ToString(), myListObj.ID, 
 myListObj.Isselected, new { id = myListObj.Isselected.ToString() }) 
Run Code Online (Sandbox Code Playgroud)

HTML:

<input type="radio" value="6"
 name="myListObj[0].Isselected" id="myListObj[0].Isselected">
Run Code Online (Sandbox Code Playgroud)

这可能是什么问题?

Edited: 
What could be the code for binding a model with multiselect radio button. 
I mean user can select more than one Employee from a list. 
I want to know what are the employees selected with the help of Model Binding 
class with the property IsSelected. Please suggest me the possible way.
Run Code Online (Sandbox Code Playgroud)

Oma*_*mar 1

单选按钮的属性value是发送到服务器的内容,因此在这种情况下,6正在发送该值,但服务器无法粘贴6Isselectedb/cIsselected类型boolean

您需要将 html 更改为此

@Html.RadioButton(myListObj.Isselected.ToString(), true, myListObj.Isselected, new { id = myListObj.Isselected.ToString() })
Run Code Online (Sandbox Code Playgroud)

请注意我如何更改myListObj.ID为仅true. 这对浏览器说“如果用户选择此单选按钮,则将值发送true到服务器”。

或者,您可以更改Isselected为 adouble?并继续使用该ID值。这样,如果未选择单选按钮,服务器将看到null; 如果选择它,服务器将看到6.