我有三个视图,每个容器一个表,所有三个都具有相同的过滤功能。
我创建了一个名为filter的局部视图,它将在三个视图中的每个视图上呈现(保存复制相同的过滤器功能)
以下是我目前构建的视图
@model SomeApplication.ViewModel.ProjectViewModel
@{
ViewBag.Title = "Hierarchy";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>Hierarchy</h2>
@using (Html.BeginForm("Hierarchy", "Dealer", FormMethod.Post))
{
@Html.Partial("~/Views/Shared/Filter.cshtml", @Model)
<p>
<button type="submit" value="Filter"></button>
</p>
}
<table>
<thead>
<tr>
<th>Dealer Name</th>
<th>Commission Amount</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model.DealerHierarchy)
{
<tr>
<td>
@item.DealerName
</td>
<td>
@String.Format("{0:n0}", item.CommissionAmount)
@*@item.CommissionAmount*@
</td>
</tr>
}
</tbody>
</table>
我将模型ProjectViewModel传递给局部视图,部分视图在
下面@model SomeApplication.ViewModel.ProjectViewModel
<div class="filter-container">
@Html.TextBoxFor(m => m.Filter.FromDate, new { @placeholder = "From Date", @Id = "txtFromDate" })
@Html.TextBoxFor(m => m.Filter.ToDate, new { @placeholder = "To Date", @id = "txtToDate" })
@Html.DropDownListFor(m => m.Filter.SelectedPaymentStatus, Model.Filter.PaymmentStatus, new { @ID = "drpPaymentStatus" })
</div>
这是我发布的控制器。
[HttpPost]
public ActionResult Hierarchy(ProjectViewModel vm)
{
DateTime? fromDate = vm.Filter.FromDate;
return View(vm);
}
当我在fromdate和todate中输入一些值并按下提交时,值总是为null我已经遵循了一个教程,但似乎我在某些方面出错了任何帮助都会受到赞赏。