I am looking for some guidance on the best workflows to handle Geoprocessing analysis on branch versioned data? Traditionally, when my organization has needed this functionality, we would use database connection files (.sde files) that are created to connect to the required version, and then perform geoprocessing on an extract of that data, typically in a local file geodatabase, with the use of a desktop script tool or a geoprocessing service written with the arcpy library.
This functionality seems to be much more difficult with branch versioning, since the only way to get the non-DEFAULT version is to query a web service. This is not ideal at all using arcpy, due to having to iterate through the data in chunks and load it into a file geodatabase piecemeal. Instead, we are looking into options to do this sort of querying and geoprocessing using C#, but there seems to be a limitation on publishing custom .NET tools as GP services, so I am at a bit of a loss from my research so far.
Any recommendations on how to best handle this workflow? If I need to clarify any of the above, please let me know.
Thanks for your help!