【发布时间】:2016-04-02 02:43:09
【问题描述】:
我编写了一个连接到 TFS 的小型 Winform 程序。 我的问题是我总是成功连接到 TFS,即使我编写了错误的凭据,但在调试模式下我仍然看到使用了我的实际凭据。
我看到了一个类似的问题here 并完全按照建议进行操作,从凭据管理器中删除了我的 TFS 凭据,仍然没有运气(是的,我确实退出并重新打开了 VS)。 我还注销了 TFS 本身并删除了 Visual Studio 上的连接。 另外,我按照here的建议删除了缓存文件夹。
我的代码看起来像这样:
folderPath=@"$/TFS_PATH";
cred = new NetworkCredential(ConfigurationManager.AppSettings["user"], ConfigurationManager.AppSettings["pass"]);
tfs = new TeamFoundationServer("CollectionPath", cred);
tfs.EnsureAuthenticated();
MessageBox.Show("tfs.EnsureAuthenticated() succeeded");
对代码的一些解释:
cred 是 NetworkCredential 的一个实例
tfs 是 TeamFoundationServer 的一个实例
用户名和密码在 app.config 中。不知何故,它完全忽略了它,并使用了我的真实凭据。
有人知道我还能做什么吗?我的目标是通过仅存储在 app.config 中的用户名和密码启用来自任何计算机/服务器的 TFS 连接,而不依赖于已经存储在机器本身上的凭据。
谢谢
【问题讨论】:
-
1)。您使用的代码没有任何问题。 2)。另外,您所说的“我的实际凭据”是什么意思,您是指您用于登录机器的用户帐户吗?
标签: c# visual-studio visual-studio-2012 tfs credentials