【问题标题】:How can make a single get request for different sets of data?如何对不同的数据集发出单个 get 请求?
【发布时间】:2019-10-13 14:21:59
【问题描述】:

我有 2 个返回 json 数据的操作。

第一个动作是用 ajax 请求调用的,以填充第一组控件,这对整个项目来说仍然是通用的,但必须在每次菜单单击时填充,但页面的下部是可变的,需要填充不同的数据。

现在我想要的是发送一个请求并在 1 个获取请求中完成 2 件事。

public JSONRESULT GetCommonData()
{
    return JSONDATA;
}

public JSONRESULT GetVariableData()
{
    return JSONDATA;
}

现在一个 ajax 调用应该能够做到这一点,而无需发送第二组数据的请求。

【问题讨论】:

    标签: c# ajax asp.net-mvc asp.net-mvc-4


    【解决方案1】:

    您可以创建一个视图模型,并且可以在一个操作中返回两个数据。在动作上你可以随心所欲地获取变量。

    public class JsonResult
    {
        public object CommonData { get; set; }
        public object VariableData { get; set; }
    }
    

    如果您有一些关系数据,您可能会遇到循环引用错误。你可以这样使用它:

    var jsonResult = JsonConvert.SerializeObject(yourmodel, Formatting.Indented,
        new JsonSerializerSettings
        {
            ReferenceLoopHandling = ReferenceLoopHandling.Ignore
        });
    
    return Json(jsonResult, JsonRequestBehavior.AllowGet);
    

    【讨论】:

      猜你喜欢
      • 2020-07-24
      • 1970-01-01
      • 2016-05-05
      • 1970-01-01
      • 2018-01-31
      • 1970-01-01
      • 2016-11-08
      • 2016-07-04
      • 2013-09-16
      相关资源
      最近更新 更多