我是MVC新手。我愚弄试图掌握这个概念。我有以下代码。它很直接。当用户点击排序操作时,它会对列表进行排序并将列表发送到索引操作(还有许多其他方法可以实现此目的,例如发送排序bool - 正如我所说,我只是在愚弄)。
我遇到的问题是Index操作中的模型参数始终为null。运行(调试)代码时会执行排序操作,而m = model不是null(有一个用户列表)。我也可以按照它直接进入索引。有人可以告诉我,我做错了什么?将非常感谢帮助。
public ActionResult Index(List<user> model)
{
if (model == null)
{
model = (from u in UsersList
select u).ToList<user>();
}
return View(model);
}
public ActionResult Sort()
{
var model = from f in UsersList
orderby f.Name ascending
select f;
return RedirectToAction("Index", new {m = model});
}
答案 0 :(得分:1)
您在这里做的是将模型作为参数传递
RedirectToAction("Index", new {m = model});
但不允许这样做。你必须直接传递模型
RedirectToAction("Index", model);
如果您仍希望将其作为参数传递,请查看this post