Having this model:
public class PagingParameters
{
public int PageIndex { get; set; }
public int PageSize { get; set; }
}
Using the following controller action:
[HttpGet]
public object Query([FromQuery] PagingParameters query)
{
return null;
}
Model data still won't properly bind:

Is there something missing here ?

You're sending a dictionary, not an object. In other words, instead of
query[PageIndex], you needquery.PageIndex, or simply justPageIndex.