我想从RedirectToAction方法传递一个以上的参数
我怎么能通过?
我的一个行动方法
[HttpPost,ActionName("SelectQuestion")] public ActionResult SelectQuestion(string email,List<QuestionClass.Tabelfields> model) { List<QuestionClass.Tabelfields> fadd = new List<QuestionClass.Tabelfields>(); for (int i = 0; i < model.Count; i++) { if (model[i].SelectedCheckBox == true) { List<QuestionClass.Tabelfields> f = new List<QuestionClass.Tabelfields>(); fadd.Add(model[i]); } } return RedirectToAction("Question",new { email = email,model = fadd.ToList() }); }
我的另一个行动方法
[HttpGet] public ActionResult Question(string email,List<QuestionClass.Tabelfields> model) { }
我没有在模型中获得价值.
解决方法
重定向时,您不能传递url中的复杂对象.
一种可能性是使用TempData:
TempData["list"] = fadd.ToList(); return RedirectToAction("Question",new { email = email});
然后在问题动作中:
var model = TempData["list"] as List<QuestionClass.Tablefields>;