嗨,我在index.cshtml頁面中使用了部分視圖。部分視圖包含一個從數據庫動態綁定的dropdownlist。如何使用模型在mvc 4的分部視圖中綁定dropdownlist?
我不想使用viewbag或viewdata來綁定這個下拉列表。
在控制器
// GET: Reporting/Home
public ActionResult Index()
{
var view = View();
return view;
}
public ActionResult _ReportingMenu()
{
var DashboardList = GetAllDashboards();
return View(DashboardList);
}
public IEnumerable<DashboardDefinition> GetAllDashboards()
{
return _reortDefinitionService.GetAllDashboards();
}
在index.cshtml
@model IEnumerable<Portal.Domain.ReportingModule.ReportDefinition.DashboardDefinition>
@{
ViewBag.Title = "Reporting";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>Reporting View</h2>
@Html.ActionLink("Add new Chart", "Create", "Chart", new { area = "Reporting" }, null)
@Html.Partial("_ReportingMenu")
在Partialview
@model Portal.Domain.ReportingModule.ReportDefinition.DashboardDefinition
<div class="nav navbar navbar-default navbar-no-margin submenu">
@Html.DropDownList("Mobiledropdown1",IEnumerable<Model.DashboardName>)
<a id="SubMenuIntegratorNew" class="btn btn-default submenu-item" href="#">
<i class="fa fa-file-o fa-lg"></i>
<span class="submenu-item-text">New</span>
</a>
<a id="SubMenuIntegratorSave" class="btn btn-default submenu-item" href="#">
<i class="fa fa-floppy-o fa-lg"></i>
<span class="submenu-item-text">Save</span>
</a>
<a id="SubMenuIntegratorSaveAs" class="btn btn-default submenu-item" href="#">
<i class="fa fa-files-o fa-lg"></i>
<span class="submenu-item-text">Save As</span>
</a>
<a id="SubMenuIntegratorAddChart" class="btn btn-default submenu-item" href="#">
<i class="fa fa-picture-o fa-lg"></i>
<span class="submenu-item-text">Add Chart</span>
</a>
</div>
,但我得到空模型的誤差。
我不知道如何在局部視圖實現
DropDownListFor()的'第二個參數''是的IEnumerable'(可能是或者你需要一個名爲'Mobiledropdown1'一個'ViewBag'財產是'IEnumerable ')你的模型是什麼(你真的有一個名爲'Mobiledropdown1'的屬性)爲什麼你不使用強類型的助手?並顯示例外的全部細節。 –
存在@ Html.Partial(string viewName,object model),因此您可以將模型傳遞給強類型的局部視圖。 –