访问sharepoint上的TFS文件

时间:2012-10-25 19:55:37

标签: c# sharepoint-2010 tfs2010 web-parts tfs-sdk

我有一个在sharepoint server 2010网站上运行的sharepoint webpart,它作为团队项目门户网站,因为它与TFS 2010集成.webpartpart成功部署到网站,我能够看到它。

使用TfsConfigurationServer类,我可以连接到TFS并获取所有项目集合的列表。如果我向前迈进一步,我可以获得每个集合中所有团队项目的列表。当我尝试连接到集合的版本控制服务器时,我的问题出现了。我想连接到版本控制服务器,这样我就可以得到该项目集合下的文件夹/文件列表。

    TfsTeamProjectCollection teamProjectCollection = configurationServer.GetTeamProjectCollection(collectionId);
try
   {
     VersionControlServer versionControl = (VersionControlServer)teamProjectCollection.GetService(typeof(VersionControlServer));
     TeamProject tp = versionControl.GetTeamProject("MyTeamProject");
     RecursionType recursion = RecursionType.Full;
     ItemSet itemSet = tp.VersionControlServer.GetItems(tp.ToString(), recursion);
     Item[] items = itemSet.Items;
     foreach (Item item in items)
     {
        l = new Label();
        l.Text = item.ChangesetId.ToString();
        this.Controls.Add(l);
     }
   }
   catch (Exception ex)
   {
     ex.ToString();
   }

上面的代码在Try块之后的第一行失败,即“versioncontrolserver”行。错误显示“重新进行身份验证时不允许更改用户。”为什么要改变用户?用户帐户(我的)可以访问sharepoint和tfs。如果我添加一个WindowsIdentity变量,并在带有断点的调试中运行,我可以确认webpart在我的用户帐户下运行。由于它在versioncontrolserver行上失败,因此它在连接到tfs系统时似乎是重新验证的。如果它正在转换帐户,为什么会这样呢?它试图使用什么帐户?

0 个答案:

没有答案