2011-01-31 72 views
0

这似乎是一个非常简单的问题;如何使用asp.net mvc从下拉列表中选择默认值?

我使用的是作者表Pubs数据库。我使用Linq to SQL作为我的数据访问,并且使用ASP.net MVC创建了一个编辑视图。作者模型的最后一个属性是'合同',它是一个真/假值。我所试图做的是与价值观“是”或“否”,并结合创建一个DropDownList到该列表时,页面加载与作者模型中的价值。

下面是我为DropDownList标记:

Html.DropDownList("dropDownList", new[] 
{       
    new SelectListItem { Text = "Yes", Value = "true" }, 
    new SelectListItem { Text = "No", Value = "false" } 
}) 

视图模型回来,因为这:

model.contract 

这是“真”或“假”的布尔值。

什么是使用模型值的下拉列表中设置正确的值最简单的方法?

回答

而不是使用只是:

model.contract 

我继续使用:

Model.contract 

被访问的页面级车型这是我需要的是。之后,所有其他东西一起来了。

+0

http://stackoverflow.com/questions/624828/asp -net-MVC-HTML的下拉列表-的SelectedValue – 2011-01-31 19:47:01

回答

1

我会考虑使用复选框比drowpdown列表:

@Html.CheckBox("checkbox", model.contract) 

,如果你仍然想使用下拉列表试试这个:

Html.DropDownList("dropDownList", new[] 
{       
    new SelectListItem { Text = "Yes", Value = "true", Selected = (model.contract == true) }, 
    new SelectListItem { Text = "No", Value = "false", Selected = (model.contract == false)} 
}) 
+1

这是正确的。我可能会用速记布尔去; `model.contract`和`!model.contract`作为`Selected`指标。确保你的视图继承了模型类。 `继承= System.Web.Mvc.ViewPage除了我需要访问的页面级型号' – Nathan 2011-01-31 21:33:35