【发布时间】:2019-08-06 12:02:07
【问题描述】:
我有一个 ASP.Net Core 应用程序,它需要将模型从一个动作传递到另一个动作。
这些是模型:
public class ClassA
{
public string Id{get;set;}
public string Name {get;set;}
public StudentMarks Marks {get;set;}
}
public class StudentMarks
{
public int Marks {get;set;}
public string Grade {get;set;}
}
还有后控制器:
[HttpPost]
public ActionResult TestAction1(ClassA model)
{
return RedirectToAction("TestAction2", model);
}
public ActionResult TestAction2(ClassA model)
{
}
在TestAction 1 中调试时,我看到Id、Name 和marks 具有价值。
我在 TestAction2 中获得的 Id 值与在 TestAction1 中的值相同。而复杂对象 Marks 的值在 TestAction2 动作方法中没有得到。
我还有哪些其他选择?
【问题讨论】:
-
也许可以试试
RedirectToAction("TestAction2", new { model = model }); -
这里可能有一些指针:stackoverflow.com/questions/22505674/…
-
@Izzy 我也试过了,结果一样。
-
简单的
return TestAction2(model)而不是RedirectToAction怎么样。您也可以使用TempData -
小问题,但您的 A 类课程不应该将 StudentMarks 作为“StudentMarks”类型。如果不是,那么标记是什么?
标签: c# asp.net-core