I found this to be inefficient since when the data gets too large it takes seconds to retrieve the data

is there anyway to perform the data manipulation without having to retrieve the entire dataset?

I tried using IQueryable<T> as the data but this returns error

There is already an open DataReader associated with this Connection which must be closed first.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: MySql.Data.MySqlClient.MySqlException: There is already an open DataReader associated with this Connection which must be closed first.

We have analyzed your query, the UrlAdaptor returns data to the Grid control after perform the Grid operations such as paging, filtering and sorting. If we are not perform paging (Skip and Take), it will return all the records to the Grid from server. So, please ensure whether you have enabled the allowPaging on your project to perform ondemand paging and also ensure Skip and Take value on server after enable the paging. Please refer to the below code example, screenshot and online documentation link.