這是一個非常基本的問題,我已經搜索了一個答案,但似乎沒有被發現。這是使用VS2015處理Scaffolded MVC5 edit.cshtml。MVC過濾器使用實體框架腳手架和剃刀下拉列表
我有2個表之間有1:M的關係,並且子表具有@ Html.DropDownList作爲父項的外鍵。我需要過濾@ Html.DropDownList。這些是具體的:
一個AssociationList有許多AgsweepParameters。
AssociationList的主鍵是AssociationListId 因此,AssociationListId字段是AgsweepParameter表中的外鍵。
使用EntityFramework和MVC5腳手架,我創建了使用實體框架作爲模型的crud視圖/控制器。
該下拉生成的聲明如下所示:
<div class="form-group">
@Html.LabelFor(model => model.AssociationListId, "Association:", htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownList("AssociationListId", null, htmlAttributes: new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.AssociationListId, "", new { @class = "text-danger" })
</div>
</div>
問:我如何篩選下拉列表,以便AssociationList.AssociationType ==「ACA」?
請注意,我用一個類似的過濾器上Index.cshtml上AssociationList表看起來像這樣:
@foreach (var item in Model.Where(row=>row.AssociationType=="ACA")) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.Name)
</td>
<td>
@Html.ActionLink("Edit", "Edit", new { id=item.AssociationListId }) |
@Html.ActionLink("Delete", "Delete", new { id=item.AssociationListId })
</td>
</tr>
}