Dynamics crm Microsoft.OData.Client$expand未填充模型

Dynamics crm Microsoft.OData.Client$expand未填充模型,dynamics-crm,odata,microsoft-odata,Dynamics Crm,Odata,Microsoft Odata,我正在使用基于的Microsoft.OData.Client。 以下是我的简单WebAPI控制器: [Route("test")] [HttpGet] public IHttpActionResult Test() { var context = _dynamicsContextFactory.CreateContext(); // adding this had no effect // context.MergeOption =

我正在使用基于的Microsoft.OData.Client。
以下是我的简单WebAPI控制器:

    [Route("test")]
    [HttpGet]
    public IHttpActionResult Test()
    {
        var context = _dynamicsContextFactory.CreateContext();
        // adding this had no effect // context.MergeOption = MergeOption.AppendOnly;
        // adding this had no effect // context.MergeOption = MergeOption.OverwriteChanges;
        // adding this had no effect // context.MergeOption = MergeOption.NoTracking;
        // adding this had no effect // context.MergeOption = MergeOption.PreserveChanges;
        var result = context.SalesOrderHeadersV2.Expand("SalesOrderLines").Take(1).ToList();
        return Ok(result);
    }
客户端生成正确的URL。
https://example.com/data/SalesOrderHeadersV2?$top=1&$expand=salesforderlines
我可以在fiddler中看到JSON中返回的SalesOrderLines属性

但是,当我检查结果变量(或查看输出)时,没有SalesOrderLines属性。因此,订单行没有从oData源下载的数据映射到我的结果对象中

重要提示:我正在使用以减少我的客户中的实体数量,如果我缺少一个加入实体,这会是一个问题吗?(在这种情况下,似乎不太可能有联合实体)

线索?
当我尝试更改此行时:

var result = context.SalesOrderHeadersV2.Expand(x=>x.SalesOrderLines).Take(1).ToList();
它将不会编译,因为
'salesforderheaderv2'不包含“salesforderlines”的定义…


注意:
上下文。SalesOrderLines
确实存在。

问题在于EDMXTrimmer删除了导航属性。
EDMXTrimmer已经修复