我正在尝试将参数传递给我的Action。 我需要传递几个参数。 在调试时,我发现简单类型的参数得到了它们的值,而我自己的类参数是null。
return RedirectToAction("Histories", new {MyUser = user, sortOrder = "name_desc" });
这是Action方法:
public ActionResult Histories(ApplicationUser MyUser, string sortOrder, int? page)
我做了一项研究并发现,似乎只有可以序列化的对象才能传递下去。
所以我只是在我的ApplicationUser类上添加了一个注释[Serializable],它不起作用。
所以我想知道传递我的物品的最佳做法是什么?
我当然知道我可以将MyUser放入Session [“CurrentUser”],但我不喜欢这种旧时尚。
谢谢。
答案 0 :(得分:0)
你还没有通过int?页面值,应该是这样的
return RedirectToAction("Histories", new {MyUser = user,
sortOrder = "name_desc",
page =1 });
或者你需要像这样使用默认参数值
public ActionResult Histories(ApplicationUser MyUser,
string sortOrder,
int? page = 1)