I get a story with:
Then I get child tasks with:
var filter = new SecondaryWorkitemFilter();
The problem is there are a ton of HTTP requests getting made, one for each of fields like Status, Source, ToDo, Description, Owners, DetailEstimate, etc.
I tried adding selectors such as below but it didn't appear to make much/any difference (also no documentation on using):
private static readonly HashSet<string> EagerLoadSelectors = new HashSet<string>
//"Category", // 'Unknown AttributeDefinition: Workitem.Category.' Also Category? Shows up in fiddler
//"Source?", // 'Unknown AttributeDefinition: Workitem.Source'. Also Source, TaskSource
See attached screenshot of Fiddler capturing requests. Currently it's taking up to 15 seconds or more to get a story and it's tasks.
I understand the need to not fully load everything with requests, especially when querying multiple work items and with sub collections. But when getting a single work item and asking for basic fields like Status, etc. I wouldn't expect so many requests that are killing performance.
How can I eagerly load all the fields of a task at once or otherwise make this perform better?