В моем случае мне нужно было установить максимальную глубину расширения в объекте при создании модели edm.
При запуске вы настраиваете свой маршрут и свою модель:
routes.MapODataServiceRoute("odata", "odata", ODataDataSourceProvider.GetEdmModel(new ODataConventionModelBuilder()));
В вашем провайдере:
public IEdmModel GetEdmModel(ODataModelBuilder builder)
{
builder.EntitySet<Object>("Objects");
builder
.EntityType<Object>()
.Filter() // Enables filtering
.Expand(3) // Enables expanding with maximum depth: 3
.Select(); // Enables selecting
return builder.Build();
}
Затем в вашем контроллере вы можете переопределить максимальное значение глубины, если оно меньше максимального значения, определенного в конфигурации объекта:
[HttpGet]
[EnableQuery(AllowedQueryOptions = AllowedQueryOptions.All, MaxExpansionDepth = 2)]
public SingleResult<Object> Get(Guid key){ }
person
Gabitu
schedule
07.12.2018