Я работаю с ReleaseHttpClientBase в пакете Microsoft.VisualStudio.Services.Release, и у меня странное поведение. Поэтому я вызываю GetReleaseDefinitionsAsync для каждого из моих проектов TFS, но я получаю исключение сокета из TFS. Странная часть, если я использую Fiddler, он работает каждый раз. Я не могу понять это.
public IEnumerable<ReleaseDefinition> GetReleaseDefinitions()
{
IEnumerable<CatalogNode> collectionNodes = GetCollectionNodes();
IEnumerable<ReleaseDefinition> releaseDefinitions = new List<ReleaseDefinition>();
//collectionNodes = collectionNodes.Skip(4);
foreach(var collectionNode in collectionNodes)
{
var uri = new Uri(TfsUri,collectionNode.Resource.DisplayName);
var releaseClient = GetHttpClient(uri);
IEnumerable<string> projectNames = GetListOfProjectNames(collectionNode);
foreach(string projectName in projectNames)
{
releaseDefinitions = releaseDefinitions.Concat(releaseClient.GetReleaseDefinitionsAsync(project: projectName).Result);
}
releaseClient.Dispose();
}
return releaseDefinitions;
}