Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将多个单选按钮值绑定到控制器操作_C#_Asp.net Mvc_Model Binding - Fatal编程技术网

C# 如何将多个单选按钮值绑定到控制器操作

C# 如何将多个单选按钮值绑定到控制器操作,c#,asp.net-mvc,model-binding,C#,Asp.net Mvc,Model Binding,下面是我的视图代码,我将列表从一个控制器传递到另一个视图,在这里我通过foreach迭代该列表,我希望在提交表单时将相同的视图模型列表传递给操作 @model IEnumerable<AskQuestionViewModel> . . . <table class="table table-bordered"> <thead> <tr> <td>Question</td> <td>Ye

下面是我的视图代码,我将列表从一个控制器传递到另一个视图,在这里我通过foreach迭代该列表,我希望在提交表单时将相同的视图模型列表传递给操作

@model IEnumerable<AskQuestionViewModel>
.
.
.
<table class="table table-bordered">
 <thead>
   <tr>
     <td>Question</td>
     <td>Yes</td>
     <td>No</td>
     </tr>
 </thead>
 <tbody>
   @foreach (var q in Model)
   {
     <tr>
        <td>@q.Question</td>
        @if (q.Answer == true)
        {
          <td><input type="radio" name="@q.QuestionID" value="true" checked />/td>
        }
        else
        {
          <td><input type="radio" name=@q.QuestionID value="true" required /></td>
        }

        @if (q.Answer == false)
        {
           <td><input type="radio" name=@q.QuestionID value="false" checked /></td>
        }
        else
        {
           <td><input type="radio" name=@q.QuestionID value="false" required /></td>
        }
        </tr>
   }
@model IEnumerable
.
.
.
问题:
对
不
@foreach(模型中的var q)
{
@q、 问题:
@如果(q.Answer==true)
{
/td>
}
其他的
{
}
@如果(q.Answer==false)
{
}
其他的
{
}
}

以下是操作代码

[HttpPost]
public ActionResult AskQuestions(List<AskQuestionViewModel> askQVM)
{
    ...
}
[HttpPost]
公共行动结果ASKQ问题(列出askQVM)
{
...
}

我在askQVM中得到空值

这是回发所需的

    <table class="table table-bordered">
        <thead>
            <tr>
                <td>Question</td>
                <td>Yes</td>
                <td>No</td>
            </tr>
        </thead>
        <tbody>
            @using (Html.BeginForm("AskQuestions", "Questions", FormMethod.Post))
            {                   

                for (int i = 0; i < Model.Count; i++)
                {                   
                    var yesOptions = Model[i].Answer ? new { @checked = "checked" } : null;
                    var noOptions = Model[i].Answer ? null : new { @checked = "checked" };
                    <tr>
                        <td>
                            @Model[i].Question
                            @Html.HiddenFor(model=>Model[i].QuestionID)
                            @Html.HiddenFor(model=>Model[i].Question)
                        </td>
                        <td>@Html.RadioButtonFor(model => Model[i].Answer, true, yesOptions)</td>
                        <td>@Html.RadioButtonFor(model => Model[i].Answer, false, noOptions)</td>
                    </tr>
                }
                <button type="submit">Submit</button>
            }
        </tbody>
    </table>

问题:
对
不
@使用(Html.BeginForm(“AskQuestions”,“Questions”,FormMethod.Post))
{                   
for(int i=0;imodel[i].QuestionID)
@Html.HiddenFor(model=>model[i].问题)
@RadioButton(model=>model[i]。回答,true,yesOptions)
@RadioButton(model=>model[i]。回答,false,noOptions)
}
提交
}

您如何将数据发布到服务器?通过Ajax或表单提交。我使用表单提交