【问题标题】:Odata expand always generate left joinOdata 扩展总是生成左连接
【发布时间】:2020-08-20 18:57:47
【问题描述】:

Odata 扩展总是生成左连接。这会导致不需要的数据包含在结果中。 模型可以在下面的链接中找到

Querying DTOs based on EF using Odata

ExplicitExpansion() cause OData expand not work

【问题讨论】:

  • 您陈述了一些信息,但我没有看到问题。
  • 问题是,如何使odata 不自动生成左连接。我需要一些时间左加入一些时间内部加入。如何使用 automapper 使用 odata 制作它?

标签: asp.net-core odata automapper


【解决方案1】:

OData 协议不支持JOIN 类似SQL 的操作(内/外/左/右)。关系被表示为所谓的“导航”属性。如果数据由 SQL 表支持,则需要在服务器 api 上定义精确和复杂的连接。

您也可以使用类似于多重连接的$expand

$expand 甚至为可选外键生成左连接。

左连接(默认)

网址: /odata/clientcontract?$expand=ContactsInfo

内连接

网址: /odata/clientcontract?$expand=ContactsInfo&$filter=ContactsInfo/any()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-25
    • 1970-01-01
    • 2020-12-13
    • 2014-07-29
    • 1970-01-01
    • 2019-05-19
    • 1970-01-01
    • 2022-01-20
    相关资源
    最近更新 更多