2013-01-01 23 views
9

按照MSDNTfsTeamProjectCollectionFactory類的方法GetTeamProjectCollection(RegisteredProjectCollection projectCollection, ICredentialsProvider fallbackCredentialsProvider現在已經過時:替代TfsTeamProjectCollectionFactory.GetTeamProjectCollection採取ICredentialsProvider

  • 「注意:此API現在已過時。」

  • [ObsoleteAttribute("This method has been deprecated and will be removed in a future release. See GetTeamProjectCollection(RegisteredProjectCollection) instead.", false)]

的建議是使用過載,只有採取RegisteredProjectCollection,但我們應該從現在起使用,如果我們想爲憑證的回退機制?

感謝

回答

12

您需要使用新的TfsTeamProjectCollection constructor這個TfsClientCredentials constructor這使得交互式提示進行身份驗證一起。

// Use default windows credentials, and if they fail, AllowInteractive=true 
var tfsCreds = new TfsClientCredentials(new WindowsCredential(), true); 

TfsTeamProjectCollection tpc = new TfsTeamProjectCollection(
    new Uri("http://yourserver:8080/tfs/DefaultCollection"), 
    tfsCreds); 
+0

似乎只適用於VS2012 –

+0

它適用於VS2010,您需要引用正確的程序集。 – gabrielmaldi

+0

我認爲所需的程序集是「Microsoft.TeamFoundation.Client.dll」。我使用了「11.0.0.0」,但其他人可能也適用。 – granadaCoder