I am creating a filter view to find records. This example on SO helps, but does not mention how handle the (Filtered) View
.
The err below is because, the actions returns a List<ProductViewModel>
, and it Errors/complains that the View is using a SearchViewModel,
I need to this POST
the searchmodel/variables, butGET
back the list/results model
The model item passed into the dictionary is of type 'System.Collections.Generic.List`1[ViewModels.ProductVM]', but this dictionary requires a model item of type 'ViewModels.SearchModel'.
Issue/Question: Since there are two models, the SearchViewModel
passed to the controller & the ProductViewModel
returned as a result, which model should be strongly typed to the view? and How can I create the view to handle both SearchModel
& ProductModel
If I stronglyType ProductVM, then I loose the submitform from the SearchVM.
I create the SearchView
as the mainview, & the _ResultsPartialView
as a partialView, is this wrong?
public ActionResult Index(SearchModel searchModel)
{
var filteredProdVMList = _Repository.GetFilteredProducts(searchModel);
return View(filteredProdVMList);
}
public class ProductVM
{
public int Id { get; set; }
public int Price { get; set; }
public string Name { get; set; }
// implicit const... blah.. removed
}
public class SearchModel
{
public int? Id { get; set; }
public int? PriceFrom { get; set; }
public int? PriceTo { get; set; }
public string Name { get; set; }
}