【问题标题】:.NET MVC - Call a controller Action from another controller action.NET MVC - 从另一个控制器动作调用控制器动作 【发布时间】:2010-09-29 08:55:58 【问题描述】: 我有一个控制器动作,我想调用另一个控制器动作。 这是一个有效的做法。有可能吗? 【问题讨论】: 相关问题:stackoverflow.com/questions/1296680/… 标签: asp.net-mvc controller 【解决方案1】: Controller.RedirectToAction 【讨论】: 这是一个 HTTP 302 内容重定向,涉及浏览器往返。有没有办法摆脱往返? 控制器操作是公开可见的 HTTP 端点。如果你有两个动作需要做同样的事情,那么你需要的是一组非公共控制器方法或一组服务。 在您调用的控制器中输入 return View("viewName", object);在另一个控制器调用中返回 (params...) 您能详细解释一下服务解决方案吗? 为什么不创建该控制器对象的实例并调用该方法?这是一个简单的 OOP 解决方案,不需要您进行任何重定向... 【解决方案2】: 正如@Justice 所说,您可以使用 RedirectToAction。此外,您可以使用 TempData 在控制器操作之间传递模型(和其他)数据。 【讨论】: