2011-11-30 55 views
0
剃刀视图(ASP.NET MVC3)结合

我的索引方法呈现类型的强类型视图(InitDetails),自动生成的代码如下所示:模型在运行时在

@ModelType BookingDeamon.InitDetails 

@Using Html.BeginForm() 
@Html.ValidationSummary(True) 
@<fieldset> 
    <legend>Reservation</legend> 
     <div class="editor-label"> 
      @Html.LabelFor(Function(model) model.Pickup) 
     </div> 
     <div class="editor-field"> 
      @Html.EditorFor(Function(model) model.Pickup) 
      @Html.ValidationMessageFor(Function(model) model.Pickup) 
     </div> 
    <p> 
     <input type="submit" value="Create" onclick="SubmitMe()" /> 
    </p> 
</fieldset> 
End Using 

在上述形式中,我想显示一个选择列表框,因为我将通过JQuery来控制这个选择列表,根据不同的事情加载不同的内容。

我希望能够将该选择列表框的值作为Pickup值提供。

当我试图做到以下几点:

@Html.DropDownListFor(Function(model) model.Pickup) 

我收到以下错误:

Overload resolution failed because no accessible 'DropDownListFor' accepts this number of argument 

是否有可能当上提交按钮,而不是采取皮卡用户点击(文本)价值给控制器;它从下拉列表框中获取值并将其提交给控制器?

回答

0

尝试这样

@Html.DropDownListFor(ModelType=>Model.Pickup, (IEnumerable<SelectListItem>)ViewData["Pickup"],"--Select--") 

在控制器

var Pickup= GetPickupList(); 
var PickupList= new SelectList(Pickup, "value", "Text", Pickup.DefaultSelectedValueIfAnyNeeded); 
ViewData["Pickup"] = PickupList 

写一个函数Ge​​tPickupList() 返回皮卡值的列表。