为什么Odata可以';在使用Extend时不解析JSON?

为什么Odata可以';在使用Extend时不解析JSON?,odata,asp.net-core-webapi,asp.net-core-3.1,Odata,Asp.net Core Webapi,Asp.net Core 3.1,我在我的项目Web Api(.Net Core 3.1)中使用OData v4。我正在使用Devart Linqconnect生成我的模型。 当我想使用“Extend”时,我得到的消息是“不能解析JSON.Raw值”。 “选择”和“过滤”工作正常。我想知道为什么“扩展”不能正常工作 [EnableQuery(PageSize = 2)] [HttpGet] public IActionResult Get(ODataQueryOptions<Tasks_Object> query)

我在我的项目Web Api(.Net Core 3.1)中使用OData v4。我正在使用Devart Linqconnect生成我的模型。 当我想使用“Extend”时,我得到的消息是“不能解析JSON.Raw值”。 “选择”和“过滤”工作正常。我想知道为什么“扩展”不能正常工作

[EnableQuery(PageSize = 2)]
[HttpGet]
public IActionResult Get(ODataQueryOptions<Tasks_Object> query)
{

var items = query.ApplyTo(DBContext.Tasks_Objects.Where(i => i.Delete== null));

return Ok(items);
}

[启用查询(PageSize=2)]
[HttpGet]
公共IActionResult获取(ODataQueryOptions查询)
{
var items=query.ApplyTo(DBContext.Tasks\u Objects.Where(i=>i.Delete==null));
返回Ok(项目);
}
在EDM模型中配置我的控制器/操作

var tasks_object = builder.EntitySet<Tasks_Object>("Task").EntityType.HasKey(e => e.ZAD_ID);

var task = builder.EntityType<Task>().HasKey(a=>a.ZAD_ID);


var tasks\u object=builder.EntitySet(“任务”).EntityType.HasKey(e=>e.ZAD\u ID);
var task=builder.EntityType().HasKey(a=>a.ZAD_ID);
问题解决了。 “Extend”不使用LinqConnect,因为LQ使用属性EntitySet作为与其他表的关系,但我们可以更改它


EF Core没有问题,因为EF Core使用属性作为列表而不是EntityRef。

如果您可以共享一个最小的、可复制的示例,那么我们可以更好地帮助解决问题。我有一个大型项目,目前正在该项目中测试OData。在另一个例子中,当我创建本地数据时,“扩展”运行良好,我认为生成模型的Linqconnect可能有问题,但我不确定。