in src/Microsoft.OpenApi.OData.Reader/Operation/NavigationPropertyGetOperationHandler.cs [147:217]
protected override void SetParameters(OpenApiOperation operation)
{
base.SetParameters(operation);
if (!LastSegmentIsKeySegment && NavigationProperty.TargetMultiplicity() == EdmMultiplicity.Many)
{
// Need to verify that TopSupported or others should be applied to navigation source.
// So, how about for the navigation property.
OpenApiParameter parameter = Context.CreateTop(NavigationProperty);
if (parameter != null)
{
operation.Parameters.Add(parameter);
}
parameter = Context.CreateSkip(NavigationProperty);
if (parameter != null)
{
operation.Parameters.Add(parameter);
}
parameter = Context.CreateSearch(NavigationProperty);
if (parameter != null)
{
operation.Parameters.Add(parameter);
}
parameter = Context.CreateFilter(NavigationProperty);
if (parameter != null)
{
operation.Parameters.Add(parameter);
}
parameter = Context.CreateCount(NavigationProperty);
if (parameter != null)
{
operation.Parameters.Add(parameter);
}
parameter = Context.CreateOrderBy(NavigationProperty);
if (parameter != null)
{
operation.Parameters.Add(parameter);
}
parameter = Context.CreateSelect(NavigationProperty);
if (parameter != null)
{
operation.Parameters.Add(parameter);
}
parameter = Context.CreateExpand(NavigationProperty);
if (parameter != null)
{
operation.Parameters.Add(parameter);
}
}
else
{
OpenApiParameter parameter = Context.CreateSelect(NavigationProperty);
if (parameter != null)
{
operation.Parameters.Add(parameter);
}
parameter = Context.CreateExpand(NavigationProperty);
if (parameter != null)
{
operation.Parameters.Add(parameter);
}
}
}