TFS:获取用户锁定文件的名称

时间:2014-09-29 12:13:57

标签: c# .net tfs vcs-checkout

在尝试签出工作区中的文件\文件夹时,如果操作失败,我会得到0。 通常它会失败,因为其他人已经用锁来检查它。

Welp,我想知道这个用户是谁(碰到他的屁股)。我该怎么做?

我的代码:

var workspaceInfo = Workstation.Current.GetLocalWorkspaceInfo(folder);
var server = new TfsTeamProjectCollection(workspaceInfo.ServerUri);
var workspace = workspaceInfo.GetWorkspace(server);
int result = workspace.PendEdit(new[] { jsonFile }, RecursionType.Full, null, LockLevel.CheckOut);
if (result == 0)
{
    // How to get the user's name ?
}

3 个答案:

答案 0 :(得分:2)

TfsTeamProjectCollection coll = YOURTEAMPROJECTCOLLECTION;

PendingSet[] pending = coll
        .GetService<VersionControlServer>()
        .QueryPendingSets(new[] { jsonFile  }, RecursionType.None, null, null);

&#39;未决&#39;将包含任何挂起的变更集,谁将其签出等等。

答案 1 :(得分:0)

在Visual Studio 2012中,您将在“输出”窗口中获取更衣室人员的名称

答案 2 :(得分:0)

您可以使用QueryPendingSets方法!