azure custom api包含子属性

时间:2013-07-30 10:01:28

标签: api azure azure-mobile-services

我有一个问题,如何构建一个从相关表中返回子对象的自定义api脚本。

我的表格结构looks like this(我不允许上传图片:-()。

我的脚本看起来像这样(SQL要复杂得多,我的问题很简单):

exports.get = function(request, response) {

var sql = "SELECT * FROM [PointsOfInterests] ";

request.service.mssql.query(sql, [],{
   success: function(results) 
    {
        response.send(statusCodes.OK, results);
    }
});
};

我现在的问题是如何将属性“地址”包含在结果中? 我的reslut对象看起来像这样:

[
 { 
   id: 123,
   address: 
        {
           City: test
        }
   }
]

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

我了解您的问题是指Windows Azure移动服务。

您可以使用自定义API执行此操作。请参阅Define custom APIs in Windows Azure Mobile Services

使用使用关节的SQL查询从两个表中返回所需的数据。请参阅Join FundamentalsUsing Inner Joins以了解语法。

例如,您可以使用以下查询:

select a.Id, a.Name, a.Location, b.City, b.PLZ, b.Street
from PointsOfInterest as a
inner join Address as b
on a.AddressId = b.ID

然后从结果集中创建一个JavaScript对象,其中包含响应消息所需的结构。

如果“a”中有与“b”(可选关系)中的任何记录无关的记录,您可能还需要使用left outer join