Asp.net mvc 2 无法在asp.net MVC中为dropdownlist使用强类型参数

Asp.net mvc 2 无法在asp.net MVC中为dropdownlist使用强类型参数,asp.net-mvc-2,drop-down-menu,Asp.net Mvc 2,Drop Down Menu,我有一个下拉列表,当用户选择一个州,即科罗拉多州时,它会在数据库中保存“CO”,效果很好。当用户返回页面时,下拉列表中显示“CO”,但当页面返回时,下拉列表值为空。如果我再次手动选择一个状态,请使用正确的信息发回并正确保存 我以这种方式创建dropdownlist: <%= Html.DropDownList(dropDownName, Model.StateProvinceSelectList, qa.AnswerValue)%> 我是否正确使用了第三个参数?qa.AnswerV

我有一个下拉列表,当用户选择一个州,即科罗拉多州时,它会在数据库中保存“CO”,效果很好。当用户返回页面时,下拉列表中显示“CO”,但当页面返回时,下拉列表值为空。如果我再次手动选择一个状态,请使用正确的信息发回并正确保存

我以这种方式创建dropdownlist:

<%= Html.DropDownList(dropDownName, Model.StateProvinceSelectList, qa.AnswerValue)%>
我是否正确使用了第三个参数?qa.AnswerValue是上述示例中包含CO的数据库中的值

在此方面的任何帮助都将不胜感激

这是我的控制器:

public ActionResult Proceed(List<QuestionAnswer> questionAnswers)
{
    questionAnswer[x].AnswerValue      // <--- This is blank on postback, but if user selects, it is set properly
    ...
}
这是html,一旦设置了值,它看起来像是MVC引擎设置了显示,但不是本例中的值,它是CO:

  <select id="questionAnswers_5__AnswerValue" name="questionAnswers[5].AnswerValue">
    <option value="">CO</option>
    <option value="AL">ALABAMA</option>
    <option value="AK">ALASKA</option>
    <option value="AS">AMERICAN SAMOA</option>
    <option value="AZ">ARIZONA </option>
     ...
  </select>

您确定在Post操作中设置了Model.StateProvinceSelectList吗?

如果我手动选择它并回发,确实是这样,但是如果它是从数据库填充的,显示正确的状态,然后回发,它的行为就像什么都没有选择一样。您能提供控制器操作中的一些代码吗?Yngve,我在上面添加了一些代码。MVC引擎似乎设置了下拉显示,但没有设置值,只有用户手动选择后才会出现。