【问题标题】:.NET MVC - How to get JsonResult from another Controller?.NET MVC - 如何从另一个控制器获取 JsonResult?
【发布时间】:2011-10-15 22:39:10
【问题描述】:

我想从另一个控制器获取 JSON 结果并将其传递回客户端, 这是场景:

使用 JQuery Client 从 Controller A 请求 JSON --> Controller A 将参数传递给 Controller B 并获取 JsonResult --> Controller A 将 JSON 传回 Client。

处理这种情况的最佳方法是什么?

【问题讨论】:

    标签: .net asp.net-mvc vb.net asp.net-mvc-3 asp.net-mvc-2


    【解决方案1】:

    将功能从 ControllerB 提取到单独的类/方法的最佳时机。

    public class ControllerB
    {
        public JsonResult Action()
        {
            return Foo.Action();
        } 
    }
    

    【讨论】:

      【解决方案2】:

      Controller A 真的需要将结果传递回客户端吗?无论哪种方式,客户都不会知道差异。一般来说,我想您会使用RedirectToAction 将控制权传递给Controller B,然后Controller B 上的操作将返回JSON 结果,与直接调用该操作没有什么不同。

      【讨论】:

      • 是否可以将参数作为对象(例如人)传递? return RedirectToAction("Action", new { person = curPersonObj });
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-29
      • 1970-01-01
      • 1970-01-01
      • 2012-06-08
      • 2017-07-02
      • 1970-01-01
      相关资源
      最近更新 更多