这些是我的模型。模型属性计数0在控制器asp.net MVC3
public class Question
{
private string _questionNo;
private string _questionText;
private List<Option> _options;
public List<Option> Options
{
get { return _options; }
set { _options = value; }
}
public string QuestionNo
{
get { return _questionNo; }
set { _questionNo = value; }
}
public string QuestionText
{
get { return _questionText; }
set { _questionText = value; }
}
}
public class Option
{
private string _optionText;
private string _optionNumber;
public string OptionText
{
get { return _optionText; }
set { _optionText = value; }
}
public string OptionNumber
{
get { return _optionNumber; }
set { _optionNumber = value; }
}
}
这是我的控制器。
public ActionResult GetQuestion()
{
Question_Data ques = new Question_Data();
var vewmodel = ques.GetQuestion("99916939-D916-4CAE-B527-1A0CD8A3C09D", "AAFA7A2B-D840-4202-B38F-563254FF8B63", 1);
return View(vewmodel);
}
public ActionResult SaveDropDown(Question question)
{
}
这个观点
<div data-role="fieldcontain">
@using (Html.BeginForm("SaveDropDown", "GetQuestion", Model))
{
@Html.AntiForgeryToken()
<fieldset>
<label class="select">@Model.QuestionText
</label>
<select name="selectedObjects" id="selectchoice1">
@foreach (var item in Model.Options)
{
<option value="@item.OptionNumber">@item.OptionText</option>
}
</select>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
}
</div>
一切都看起来不错。当我点击视图中的创建按钮时,它会去控制器中的SaveDropDown,但它显示选项列表与空。
我已经定义了Question类中的选项列表。它必须显示,但没有显示任何选项。为什么它的行为如此。最新的解决方案。
谢谢。
这是我收到的表格后
<form method="post" action="/GetQuestion/SaveDropDown?Options=System.Collections.Generic.List%601%5Bsd.mvc.Models.Option%5D&QuestionNo=136&QuestionText=What%20is%20your%20current%20relationship%20status%3F&QuestionType=2">
唯一的问题相关的属性都贴。
我不确定我是否理解你的问题:你是说最初,页面没问题(看起来,下拉框中包含所有选项),但单击_Create_按钮后出现问题?如果是,那么_SaveDropDown_方法的代码是什么?这是空的问题,不会像那样编译。何时使用粘贴视图(作为初始页面,还是当您单击_Create_按钮或两者时)? – Codo
当我点击创建按钮,在SaveDropDown method.its显示question.Options.count = 0。我怎么能得到这个问题。选项? – Chakradhar