8

我正在尝试从我写在 .NET 上的 Windows 服务访问https://visualstudio.com(以前称为https://tfs.visualstudio.com、http : //www.tfspreview.com )。

我想使用新的基本身份验证,但找不到方法。

我发现了很多指向博客文章Team Foundation Service 更新 - 8 月 27 日的链接,但它正在使用 Team Explorer Everywhere Java 客户端进行 TFS。

是否有新版本的 TFS .NET 对象模型支持基本身份验证?

顺便说一句,我已经连续使用服务帐户登录。这个答案非常有用。

4

2 回答 2

13

首先,您的机器上至少需要安装Visual Studio 2012 Update 1Microsoft.TeamFoundation.Client.dll它包括一个带有类的更新程序集BasicAuthCredential

这是执行此操作的代码,来自Buck 的博客文章 How to connect to Team Foundation Service

using System;
using System.Net;
using Microsoft.TeamFoundation.Client;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            NetworkCredential netCred = new NetworkCredential(
                "yourbasicauthusername@live.com",
                "yourbasicauthpassword");
            BasicAuthCredential basicCred = new BasicAuthCredential(netCred);
            TfsClientCredentials tfsCred = new TfsClientCredentials(basicCred);
            tfsCred.AllowInteractive = false;

            TfsTeamProjectCollection tpc = new TfsTeamProjectCollection(
                new Uri("https://YourAccountName.visualstudio.com/DefaultCollection"),
                tfsCred);

            tpc.Authenticate();

            Console.WriteLine(tpc.InstanceId);
        }
    }
}
于 2013-02-01T10:35:09.750 回答
0

身份验证有一些更新。对于 .NET 应用程序,我们现在建议使用VSTS 客户端库。另一种选择是使用 Azure Active Directory 库 (ADAL)。有关更多信息和示例,请查看VSTS 的身份验证文档

于 2017-08-15T00:12:59.313 回答