我的域设置类似于
public class Pagination
{
public int? Page { get; set; }
}
public class IndexViewModel
{
public Pagination Pagination { get; set; }
}
public class HomeController : Controller
{
public ActionResult Index(IndexViewModel model, Pagination pg, string page)
{
return View(model);
}
}
当我导航到时,/?Page=5
我希望 5 是 model.Pagination.Page 的值也为 5,但是似乎 MVC 不会绑定超过 1 层深度的查询参数。
我能做些什么来改变这一点?
还是改变这个设置比它的价值更麻烦?我应该这样做
public class HomeController : Controller
{
public ActionResult Index(IndexViewModel model, Pagination pg, string page)
{
model.Pagination = pg;
return View(model);
}
}
*请注意,三重参数用于说明它不会填充 IndexViewModel,但它会填充其他两个参数,因为它们的深度为 0 或 1 层。