有没有办法将IEnumerable参数传递给另一种方法
问题描述:
我正在尝试将IEnumerable模型参数从一种方法传递给另一种方法,但是当我调试代码时,即使方法签名相同,也不会传递该参数.
I am trying to pass a IEnumerable model parameter from one method to another however when I debug the code the parameter is not being passed even though the method signature is the same.
我尝试了有无前缀前缀
方法1:
[HttpPost]
public ActionResult Create_Filter([DataSourceRequest] DataSourceRequest request, [Bind(Prefix = "models")]IEnumerable<CourseFilterViewModel> courseFilterVM)
{
return RedirectToAction("Course", "Filter", courseFilterVM);
}
方法2:
public ActionResult Course([Bind(Prefix = "models")]IEnumerable<CourseFilterViewModel> courseFilterVM)
{
return View(courseFilterVM);
}
我希望整个模型都可以通过,但是我得到的是空值.
I am expecting the entire model to be passed but instead I am getting a null value.
答
您可以简单地执行以下操作:
You can simply do as follows:
[HttpPost]
public ActionResult Create_Filter([DataSourceRequest] DataSourceRequest request, [Bind(Prefix = "models")]IEnumerable<CourseFilterViewModel> courseFilterVM)
{
// Others stuffs here
return Course(courseFilterVM);
}