web-dev-qa-db-ja.com

コンソールアプリケーションからクライアントAPIを使用してTeamFoundationServer(tfs)に接続する方法

コンソールアプリケーションでクライアントAPIを使用して、visualstudio.comでホストされているTeamFoundationServerに接続しようとしていますが、次のエラーが発生します。

TF400813: Resource not available for anonymous access. Client

私のコード:

private static void Main(string[] args)
{
    Uri collectionUri = new Uri("https://MyName.visualstudio.com/DefaultCollection");

    TfsTeamProjectCollection collection =
        new TfsTeamProjectCollection(
            collectionUri,
            new System.Net.NetworkCredential(@"[email protected]", "MyPassword"));

    WorkItemStore workItemStore = collection.GetService<WorkItemStore>(); 
}
11
Omid Shariati

TfsTeamProjectCollectionからEnsureAuthenticated()メソッドを呼び出す必要があります。

private static void Main(string[] args)
{
    Uri collectionUri = new Uri("https://MyName.visualstudio.com/DefaultCollection");

    NetworkCredential credential = new NetworkCredential("USERNAME", "PASSWORD");
    TfsTeamProjectCollection teamProjectCollection = new TfsTeamProjectCollection(collectionUri, credential);
    teamProjectCollection.EnsureAuthenticated();

    WorkItemStore workItemStore = teamProjectCollection.GetService<WorkItemStore>();

    WorkItemCollection workItemCollection = workItemStore.Query("QUERY HERE");

    foreach (var item in workItemCollection)
    {
        //Do something here.
    }
}

それがあなたの問題を解決したことを願っています。

13

アカウントに 代替資格情報 を設定します。コマンドラインクライアントの代替認証情報をNetworkCredentialパラメータとして使用できます。

4
Edward Thomson