Search code examples
odataasp.net-core-webapiasp.net-core-3.1

Why does Odata can't parse JSON when using Extend?


I'm using OData v4 in my project Web Api (.Net Core 3.1). I'm using Devart Linqconnect to generate my model. When I want to use "Extend" I'm getting message "can't parse JSON. Raw value". "Select" and "Filter" working good. I'm wondering why "Extend" not working properly.

[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);
}

configuration of my controller/action in EDMModel.

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

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



Solution

  • The problem is solved. "Extend" not working with LinqConnect because LQ using property EntitySet<> as a relation to other table, but we can change it.

    There isn't problem with EF Core because EF Core using properties as a List<> not EntityRef.