OData Connected Service is much easier than the generated client code like : ExternalUseDbService.GetActivityStatistics(filter: $"{args.Filter}", orderby: orderBy, top: args.Top, skip: args.Skip, count:args.Top != null && args.Skip != null);
It use Linq to do the query service.
As far as we know this applies to OData v7 while we use OData v8. In fact we hit so many roadblocks since the beginning 8 years ago related to OData that we decided to have our own simple service instead relying on “official” OData support in .NET.