在我的示例中,我有以下数据库结构。 Order
有许多OrderLine
,其中有一个Product
。
我正在尝试返回以下DTO:
public class OrderLineDto {
public int Id { get; set; }
public int Quantity { get; set; }
public string OrderType { get; set; }
public string ProductName { get; set; }
}
这应该可以通过使用以下查询路由来实现:
[Route("/orderlines")]
public class FindOrderLines : QueryBase<OrderLine, OrderLineDto>,
IJoin<OrderLine, Order>,
IJoin<OrderLine, Product>
{ }
我在这里要做的是在两个方向上加入OrderLine以从订单引入类型,从产品中引入名称并将其返回到OrderLineDto。
我只能使用一个IJoin
来单独执行这些操作,但是AutoQuery似乎只使用第一个IJoin
接口声明,并且不执行第二个连接。
如果我尝试这样的加入:IJoin<OrderLine, Order, Product>
我收到以下异常:Could not infer relationship between Order and Product
是否有可能通过自动查询实现我想要做的事情,还是应该回到编写标准REST服务,放弃AutoQuery?
答案 0 :(得分:1)
我已向ServiceStack提交了拉取请求,现在允许此行为。