У меня были некоторые проблемы с подключением к нашему старому серверу TFS 2008 с использованием этого метода, но вещь, которая разрешила мой случай, была действительно простой:
Сначала я определил URL TFS следующим образом:
private const string Tfs2008Url = @"http://servername:8080/tfs/";
static readonly Uri Tfs2008Uri = new Uri(Tfs2008Url);
Путь, используемый в URL-адресе, - это тот, который мы используем при подключении через VisualStudio, поэтому я подумал, что это должно быть одинаково в вызовах API, но когда я попытался использовать его со следующей аутентификацией, я получил TF31002 / 404 ошибка:
var collection = new TfsTeamProjectCollection(Tfs2008Uri,new NetworkCredential("AdminUser","password","domain_name"));
collection.EnsureAuthenticated();
Но когда я изменил URL-адрес на корень TFS, он подтвердил подлинность OK!
private const string Tfs2008Url = @"http://servername:8080/";
static readonly Uri Tfs2008Uri = new Uri(Tfs2008Url);
Не знаю, помогло ли это кому-нибудь, но это точно помогло мне!