1

问题:

  1. 您有一个自定义控制器操作,它会修改大量数据(大约 5MB)。
  2. 您需要将此数据传递给另一个控制器操作,您不能对其进行修改。

最好的方法是什么?

正常的 RedirectToAction 会导致大量数据发布。

TempData 不能用作解决方法,因为您无法修改其他控制器以读取临时数据。

[HttpPost, ActionName("Import")]
    public ActionResult ImportPost(int id)
    {
    var bigData = GetBigData(id);
    bigData = ManipulateBigDataIntoFormatOtherControllerUnderstands(bigData);


    // TODO: redirect to other controller (which has HttpPost attribute), somehow??
}
4

1 回答 1

4

没关系,发布后立即提出答案:

var c = new Namespace.Controllers.OtherController();
c.ControllerContext = ControllerContext;
return c.Action(bigData);
于 2013-02-08T16:00:08.370 回答