无法从“字符串”转换为“Microsoft.TeamFoundation.Client.TfsTeamProjectCollection”

问题描述 投票:0回答:1

我正在使用下面的代码,

WorkspaceInfo workspaceInfo = Workstation.Current.GetLocalWorkspaceInfo("$/UKNML1234_1");
Uri serverUri = workspaceInfo.ServerUri;
TfsTeamProjectCollection server = new TfsTeamProjectCollection(serverUri);
var versionControlServer = server.GetService<VersionControlServer>();
Workspace WS = workspaceInfo.GetWorkspace(versionControlServer.AuthorizedUser);

但我收到错误

cannot convert from ‘string’ to ‘Microsoft.TeamFoundation.Client.TfsTeamProjectCollection

知道如何解决这个问题吗?

编辑:错误发生在第五行

versionControlServer.AuthorizedUser

c# tfs tfs-sdk
1个回答
0
投票

在您的代码中,错误是由于将错误类型的参数传递给

GetWorkspace
方法引起的。具体来说,您传递的是
versionControlServer.AuthorizedUser
(代表授权用户名称的字符串),而不是所需的
VersionControlServer
对象。为了解决这个问题,我修改了代码,将
versionControlServer
对象直接传递给
GetWorkspace
方法。试试这个

WorkspaceInfo workspaceInfo = Workstation.Current.GetLocalWorkspaceInfo("$/UKNML1234_1");
Uri serverUri = workspaceInfo.ServerUri;
TfsTeamProjectCollection server = new TfsTeamProjectCollection(serverUri);
server.EnsureAuthenticated();  // Ensure the server is authenticated
var versionControlServer = server.GetService<VersionControlServer>();

// Use the versionControlServer object directly, not the AuthorizedUser property
Workspace WS = workspaceInfo.GetWorkspace(versionControlServer);
© www.soinside.com 2019 - 2024. All rights reserved.