1

我有一个从 TFS 服务器检索变更集的代码。该代码在控制台应用程序中运行良好。我的代码如下所示:

TfsTeamProjectCollection tpc = new TfsTeamProjectCollection(new Uri("http://tfs....."));
tpc.Authenticate();
VersionControlServer vcs = tpc.GetService<VersionControlServer>();

VersionSpec from = VersionSpec.ParseSingleSpec(versionFromString, null);
VersionSpec to = VersionSpec.ParseSingleSpec(versionToString, null);
var histories =
    vcs.QueryHistory(
        path + "/*.cs", VersionSpec.Latest, 0, RecursionType.Full, null, from, to, Int32.MaxValue, true, true, true);


foreach (Changeset history in histories)
{
    foreach (Change change in history.Changes)
    {
         // results here....
    }
}

但是当我在 mvc 应用程序中移动代码时,没有错误,但它在这一行返回一个空的历史列表:foreach (Changeset history in histories)

我以为是权限不足,所以我使用了模拟网络服务。代码没有抱怨这种模仿,但在那一行仍然没有结果。

您认为这仍然是与用户相关的问题吗?该用户是否应该具有特定权限才能执行并返回结果?

如果我可以访问该服务器,我会安装 processmon 以查看发生了什么,但我没有。

感谢您的帮助。

4

1 回答 1

0

我终于可以访问服务器了。这与特权有关。我使用的用户原来没有在 TFS 服务器上设置为管理员。我只需要使用具有管理帐户的备用帐户。

于 2013-09-04T18:36:01.463 回答