Javascript 将多个表结果合并为一个JSON azure移动服务

Javascript 将多个表结果合并为一个JSON azure移动服务,javascript,json,azure-mobile-services,Javascript,Json,Azure Mobile Services,我想将多个表中的数据返回到一个json对象中,这样我就可以在客户端的其他对象列表中进行反序列化。客户端上的对象如下所示: class LastSyncEntity { public List<OptionSettings> option { get; set; } public List<Project> project { get; set;} } { [ {option object 1}

我想将多个表中的数据返回到一个json对象中,这样我就可以在客户端的其他对象列表中进行反序列化。客户端上的对象如下所示:

class LastSyncEntity
    {
        public List<OptionSettings> option { get; set; }
        public List<Project> project { get; set;}
    }
{
   [
      {option object 1}
      {option object 2}
   ],
   [
      {project object 1}
      {project object 2}
   ],
}
{
  "option" : [
    { "option" : "object 1" },
    { "option" : "object 2" }
  ],
  "project": [
    { "project" : "object 1" },
    { "project" : "object 2" }
  ]
}

如何让服务器上的javascript变成这样?我对javascript一无所知。

您提到的API的输出不是真正有效的JSON。假设你想要这样的东西:

class LastSyncEntity
    {
        public List<OptionSettings> option { get; set; }
        public List<Project> project { get; set;}
    }
{
   [
      {option object 1}
      {option object 2}
   ],
   [
      {project object 1}
      {project object 2}
   ],
}
{
  "option" : [
    { "option" : "object 1" },
    { "option" : "object 2" }
  ],
  "project": [
    { "project" : "object 1" },
    { "project" : "object 2" }
  ]
}
然后,您可以按如下方式实现API:

exports.get = function(request, response) {
    var optionTable = request.service.tables.getTable('option');
    var projectTable = request.service.tables.getTable('project');
    optionTable.where(function() {
        return true; // add any filtering for options here
    }).read({
        success: function(options) {
            projectTable.where(function() {
                return true; // add any filtering for projects here
            }.read({
                success: function(projects) {
                    var result = { option: options, project: projects };
                    response.send(200, result);
                }
            });
        }
    });
}

当我尝试执行第二个table.read时,我不断得到一个内部服务器错误500,我知道java脚本是这样的:“exports.get=functionrequest,response{var optionTable=request.service.tables.getTable'optionSettings';var projectTable=request.service.tables.getTable'Project';projectTable.read{success:functionprojects{optionTable.read{success:functionoptions{response.send200,options;}}};};};}'查看服务器日志,它会告诉您错误是什么。具体来说,对于您的代码,您在调用projectTable的成功回调中有一个输入错误。您没有成功,而是成功了上一次的输入错误太多了,这只是输入错误!只是没有注意到而已