我在ASP.net MVC應用程序工作時到達不綁定,我有一個產品表作爲截圖所示:視圖模型屬性在控制器
我希望能夠過濾該產品表,並且我希望通過查詢字符串參數(作爲GET
)進行過濾,以便可以共享該URL。
視圖模型的頁面是這樣的:
public class InventoryReportViewModel
{
public SearchViewModel Search { get; set; } // 2 string props [Type and Term]
public IEnumerable<ProductViewModel> Products { get; set; }
public PaginationViewModel Pagination { get; set; } // 3 int props [currentPage, recordsPerPage, totalRecords]
}
我用剃刀助手繪製濾波器的輸入,如:
@Html.EditorFor(m => m.Search.Term, new { htmlAttributes = new { @class = "form-control" } })
同時,我已經建立了我形成使用GET
像這樣:
@using (Html.BeginForm("Inventory", "Report", FormMethod.Get))
{
// form elements
}
我ReportController.cs
具有以下甲基OD,是有關在這裏我的問題:
public ActionResult Inventory(string SearchTerm, string SearchType, int page = 1)
{
var viewModel = _reportService.GetProducts(page, SearchTerm, SearchType);
return View(viewModel);
}
當我通過一個搜索詞,然後單擊篩選結果按鈕,我到達我上面的控制器的方法,但SearchTerm
和SearchType
是null
。
我知道如何「破解」這個工作,例如,如果我這樣做:
<input type="text" name="SearchTerm" class="form-control"/>
然後搜索詞我輸入將由控制器回升,但有沒有其他辦法?
感謝@Usman,工作。 – Ciwan