I found what I was doing wrong. When returning the IEntityPaginatedList, I need to make sure to include a value for TotalCount. Here's what I am now returning.
IEntityPaginatedList list = new EntityPaginatedList
StartIndex = 0,
PageIndex = paginationData.PageIndex,
PageSize = config.pageSize,
I can think of a few options:
Enumerate items through the folder structure. The same item might show up in multiple folders, but you can just filter out duplicates. This will work with any provider, but will be slow. But then - anything getting huge lists will be slow.
Do a wild card search giving all items, then paginate through the results (provider needs ...
It is in Tridion.ExternalContentLibrary.V2 dll.
public static class SessionFactory
public static IEclSession CreateEclSession(Session tcmSession);
public static IEclSession CreateEclSession(string username);